import { computed as G, inject as Ae, reactive as ie, provide as Ye, defineComponent as L, createBlock as X, openBlock as g, resolveDynamicComponent as le, unref as u, resolveComponent as x, createElementBlock as v, normalizeClass as Z, createVNode as B, onBeforeUnmount as $e, Fragment as D, createElementVNode as p, renderList as Q, toDisplayString as S, createCommentVNode as W, renderSlot as H, onUnmounted as re, onMounted as ce, withModifiers as V, withDirectives as J, vModelText as ne, vModelSelect as ue, useCssVars as fe, watch as Oe, nextTick as de, resolveDirective as pe, normalizeStyle as K, createTextVNode as te, ref as N, vShow as Ce, Teleport as be, shallowReactive as Xe, defineAsyncComponent as ve, onUpdated as Ve, withCtx as oe, vModelDynamic as Ne, KeepAlive as Je, createSlots as Ge } from "vue";
const Me = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  get default() {
    return Cl;
  }
}, Symbol.toStringTag, { value: "Module" })), Ke = {
  mounted(n, e) {
    if (typeof e.value == "function") {
      let t = 0;
      const o = 300, s = (r) => {
        const l = performance.now();
        l - t < o ? (e.value(r), t = 0) : t = l;
      };
      n.__dbPointerDownHandler = s, n.addEventListener("pointerdown", s);
    }
  },
  unmounted(n) {
    const e = n.__dbPointerDownHandler;
    e && (n.removeEventListener("pointerdown", e), delete n.__dbPointerDownHandler);
  }
}, Qe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ke
}, Symbol.toStringTag, { value: "Module" }));
function me(n, e) {
  function t(y, k) {
    var C;
    (C = k == null ? void 0 : k.classList) != null && C.contains(y) && k.classList.remove(y);
  }
  function o(y, k) {
    var C;
    (C = k == null ? void 0 : k.classList) != null && C.contains(y) || k.classList.add(y);
  }
  function s(y) {
    o("touch-none", y);
  }
  function r(y) {
    t("touch-none", y);
  }
  function l(y) {
    const k = window.event || y;
    return k == null || k.preventDefault(), k == null || k.stopPropagation(), !0;
  }
  function a(y) {
    const k = window.event || y;
    k.cancelable && (k == null || k.preventDefault(), k == null || k.stopPropagation());
  }
  function i(y) {
    e.timeout || (e.timeout = requestAnimationFrame(() => {
      y(), cancelAnimationFrame(e.timeout), e.timeout = null;
    }));
  }
  function f() {
    return "ontouchstart" in window || navigator.maxTouchPoints;
  }
  function d(y) {
    f() && e.touchstat !== 1 && (y.addEventListener("touchstart", h, !0), e.touchstat = 1);
  }
  function c(y) {
    f() && e.touchstat !== 2 && (y.addEventListener("touchmove", l), s(y), e.touchstat = 2);
  }
  function m(y) {
    f() && e.touchstat !== 3 && (y.removeEventListener("touchmove", l), r(y), e.touchstat = 3);
  }
  function h(y) {
    document.body.addEventListener("touchmove", _), document.body.addEventListener("touchend", $), e.dragttm = Date.now();
  }
  function _(y) {
    e.dragttm && Date.now() - e.dragttm < 1e3 && (e.dragtstat = 2);
  }
  function $(y) {
    document.body.removeEventListener("touchmove", _), document.body.removeEventListener("touchend", $), e.dragtstat = 0;
  }
  return {
    eStop: l,
    canTouch: f,
    eStopTouch: a,
    setTouchNone: s,
    setTouchAuto: r,
    fnPThrottle: i,
    vtTouchInit: d,
    vtTouchDown: c,
    vtTouchUp: m
  };
}
const ae = {}, Ze = {
  mounted(n, e) {
    const { fnPThrottle: t, vtTouchInit: o, vtTouchDown: s, vtTouchUp: r } = me(
      n,
      e.value
    );
    o(n);
    let l = !1, a = 0, i = 0, f = 0, d = 0;
    typeof e.value.domarea == "string" ? ae.dragAreaDom = document.getElementById(e.value.domarea) : ae.dragAreaDom = n;
    const c = (_) => {
      s(n), l = !0;
      const $ = ae.dragAreaDom.getBoundingClientRect();
      ae.dragAreaDom.style.position = "absolute", ae.dragAreaDom.style.transform = `translate(${$.x}px, ${$.y}px)`, a = _.clientX - $.x, i = _.clientY - $.y, n.style.cursor = "grabbing", document.addEventListener("pointermove", m), document.addEventListener("pointerup", h);
    }, m = (_) => {
      t(() => {
        if (l) {
          f = _.clientX - a, d = _.clientY - i;
          const $ = window.innerWidth - ae.dragAreaDom.offsetWidth, y = window.innerHeight - ae.dragAreaDom.offsetHeight;
          f = Math.max(0, Math.min(f, $)), d = Math.max(0, Math.min(d, y)), ae.dragAreaDom.style.transform = `translate(${f}px, ${d}px)`;
        }
      });
    }, h = () => {
      l = !1, n.style.cursor = "grab", r(n), document.removeEventListener("pointermove", m), document.removeEventListener("pointerup", h);
    };
    n.addEventListener("pointerdown", c), ae.unmounted = () => {
      n.removeEventListener("pointerdown", c);
    };
  },
  // 在卸载时清理事件监听
  unmounted(n) {
    typeof (ae == null ? void 0 : ae.unmounted) == "function" && ae.unmounted();
  }
}, et = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ze
}, Symbol.toStringTag, { value: "Module" })), ge = {}, tt = {
  mounted(n, e) {
    var O, A, z, E, I, T, w;
    const { fnPThrottle: t, vtTouchInit: o, vtTouchDown: s, vtTouchUp: r } = me(
      n,
      e.value
    );
    o(n);
    let l = !1, a = { x: 0, y: 0 }, i = { x: 0, y: 0 }, f = null, d = 1;
    const c = ((O = e.value) != null && O.dom ? document.getElementById(e.value.dom) : "") || n, m = ((A = e.value) != null && A.domarea ? document.getElementById(e.value.domarea) : "") || c, h = ((z = e.value) != null && z.dommask ? document.getElementById(e.value.dommask) : "") || ((w = (T = (I = (E = e.value) == null ? void 0 : E.ujt) == null ? void 0 : I.$global) == null ? void 0 : T.sys) != null && w.zoomid ? document.getElementById(e.value.ujt.$global.sys.zoomid) : "") || document.getElementById("asaizoomarea") || document.body, _ = () => {
      var M, P, b;
      return h && ((b = (P = (M = e.value) == null ? void 0 : M.ujt) == null ? void 0 : P.$global) == null ? void 0 : b.scale) || 1;
    }, $ = (M) => {
      var j, U;
      if (!h) return;
      if (s(n), M.preventDefault(), d = _(), (j = e.value) != null && j.pos)
        i = e.value.pos;
      else {
        const R = (U = window.getComputedStyle(m).transform) == null ? void 0 : U.split(", ");
        if (R.length > 2) {
          const Y = R.pop().slice(0, -1) || 0, se = R.pop() || 0;
          i = {
            x: parseFloat(se),
            y: parseFloat(Y)
          };
        } else
          i = {
            x: 0,
            y: 0
          };
      }
      l = !0, f = h.getBoundingClientRect();
      let P, b;
      P = M.clientX, b = M.clientY, a = {
        x: (P - f.left) / d - i.x,
        y: (b - f.top) / d - i.y
      }, c.setPointerCapture(M.pointerId), document.addEventListener("pointermove", y), document.addEventListener("pointerup", k), document.addEventListener("pointercancel", k);
    }, y = (M) => {
      if (!l || !f) return;
      let P, b;
      P = M.clientX, b = M.clientY, d = _();
      const j = (P - f.left) / d - a.x, U = (b - f.top) / d - a.y, F = h.offsetWidth - m.offsetWidth, R = h.offsetHeight - m.offsetHeight;
      t(() => {
        e.value.pos ? (e.value.pos.x = +Math.max(
          0,
          Math.min(j, F)
        ).toFixed(6), e.value.pos.y = +Math.max(
          0,
          Math.min(U, R)
        ).toFixed(6)) : m.style.transform = `translate(${+Math.max(
          0,
          Math.min(j, F)
        ).toFixed(6)}px,${+Math.max(
          0,
          Math.min(U, R)
        ).toFixed(6)}px)`;
      });
    }, k = (M) => {
      r(n), M instanceof PointerEvent && c.hasPointerCapture(M.pointerId) && (l = !1, c.releasePointerCapture(M.pointerId)), document.removeEventListener("pointermove", y), document.removeEventListener("pointerup", k), document.removeEventListener("pointercancel", k);
    };
    c.addEventListener("pointerdown", $);
    const C = () => f = null;
    window.addEventListener("resize", C), ge.unmounted = () => {
      c.removeEventListener("pointerdown", $), window.removeEventListener("resize", C);
    };
  },
  unmounted(n) {
    typeof (ge == null ? void 0 : ge.unmounted) == "function" && ge.unmounted();
  }
}, ot = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: tt
}, Symbol.toStringTag, { value: "Module" }));
function nt(n) {
  const e = window.event || n;
  e.preventDefault(), e.stopPropagation();
}
const at = {
  mounted(n, e) {
    function t(o) {
      e.value.type === 2 && nt(o);
      const s = document.getElementById(
        e.value.dom
      );
      s && (s.classList.contains("as-fullscreen") ? s.classList.remove("as-fullscreen") : s.classList.add("as-fullscreen"));
    }
    e.value.type === 2 ? n.addEventListener("dblclick", t) : n.addEventListener("click", t);
  }
}, st = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: at
}, Symbol.toStringTag, { value: "Module" })), ee = {}, lt = {
  mounted(n, e) {
    var s, r;
    const { $global: t } = ((s = e.value) == null ? void 0 : s.ujt) || {}, { canTouch: o } = me(n, e.value);
    if ((r = t.sys) != null && r.onkeyboard && o()) {
      let l = function() {
        t.keyboard.params || (t.keyboard.params = {});
      }, a = function(f) {
        var d;
        f == null || f.setAttribute("inputmode", "none"), (d = f == null ? void 0 : f.style) == null || d.setProperty("ime-mode", "disabled", "important"), t.keyboard.params.ot && (t.keyboard.params.ot.fndscb = () => {
          var c;
          f == null || f.removeAttribute("inputmode"), (c = f == null ? void 0 : f.style) == null || c.setProperty(
            "ime-mode",
            "normal",
            "important"
          );
        });
      }, i = function(f) {
        var d, c, m, h, _, $, y, k, C, O, A, z;
        if ((m = (c = (d = t.keyboard.params) == null ? void 0 : d.ot) == null ? void 0 : c.fnnumcb) == null || m.call(c), ($ = (_ = (h = t.keyboard.params) == null ? void 0 : h.ot) == null ? void 0 : _.fndscb) == null || $.call(_), l(), t.keyboard.params.ot = {}, !((y = f.target) != null && y.closest(".noaskeyboard"))) if ((k = f.target) != null && k.closest(".asaimonacoeditor"))
          ee.monacoDom = f.target.closest(".asaimonacoeditor"), ee.monacoDomEdit = ee.monacoDom.querySelector(
            ".native-edit-context"
          ), ee.monacoDomText = ee.monacoDom.querySelector("textarea"), a(ee.monacoDomEdit), (C = e.value) != null && C.style && (t.keyboard.params.ot.style = e.value.style), Object.assign(t.keyboard.params, {
            type: "monaco",
            el: ee.monacoDomText
          }), t.keyboard.isshow = 1;
        else if (["textarea", "text", "number", "password"].includes(
          (O = f.target) == null ? void 0 : O.type
        ) && !((A = f.target) != null && A.disabled)) {
          if (ee.monacoDomEdit = f.target, a(ee.monacoDomEdit), ee.monacoDomEdit.type === "number") {
            t.keyboard.params.ot.isnumber = !0, ee.monacoDomEdit.type = "text";
            let E = requestAnimationFrame(() => {
              var I, T, w, M;
              ee.monacoDomEdit.setSelectionRange(
                ((T = (I = ee.monacoDomEdit) == null ? void 0 : I.value) == null ? void 0 : T.length) || 0,
                ((M = (w = ee.monacoDomEdit) == null ? void 0 : w.value) == null ? void 0 : M.length) || 0
              ), ee.monacoDomEdit.focus(), cancelAnimationFrame(E);
            });
            t.keyboard.params.ot.fnnumcb = () => {
              ee.monacoDomEdit.type = "number";
            };
          }
          (z = e.value) != null && z.style && (t.keyboard.params.ot.style = e.value.style), Object.assign(t.keyboard.params, {
            type: ee.monacoDomEdit.type,
            el: ee.monacoDomEdit || n
          }), t.keyboard.isshow = 1;
        } else
          t.keyboard.params = {}, t.keyboard.isshow = 0;
      };
      l(), n.addEventListener("pointerdown", i), ee.unmounted = () => {
        n.removeEventListener("pointerdown", i);
      };
    }
  },
  unmounted(n) {
    typeof (ee == null ? void 0 : ee.unmounted) == "function" && ee.unmounted();
  }
}, it = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: lt
}, Symbol.toStringTag, { value: "Module" })), rt = {
  mounted(n, e) {
    var t, o;
    (t = e == null ? void 0 : e.value) != null && t.right || n != null && n.classList && !((o = n.classList) != null && o.contains("asailevel")) && n.classList.add("asailevel");
  }
}, ut = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: rt
}, Symbol.toStringTag, { value: "Module" })), ct = {
  mounted(n, e) {
    const { vtTouchInit: t, vtTouchDown: o, vtTouchUp: s } = me(
      n,
      e.value
    );
    t(n);
    const r = e.value.long ? 1e3 : 500;
    let l = null, a = !1, i = 0, f = 0;
    const d = 10, c = ($) => {
      var y;
      o(n), e.value.prevent && $.preventDefault(), a = !0, (y = $ == null ? void 0 : $.touches) != null && y[0] ? (i = $.touches[0].clientX, f = $.touches[0].clientY) : (i = $.clientX, f = $.clientY), e.value.press && e.value.press($), l = window.setTimeout(() => {
        a && e.value.hold && e.value.hold($);
      }, r);
    }, m = ($) => {
      s(n), l !== null && (clearTimeout(l), l = null), a && (e.value.release && e.value.release($), a = !1);
    }, _ = {
      down: c,
      up: m,
      move: ($) => {
        var A;
        if (!a) return;
        let y = 0, k = 0;
        (A = $ == null ? void 0 : $.touches) != null && A[0] ? (y = $.touches[0].clientX, k = $.touches[0].clientY) : (y = $.clientX, k = $.clientY);
        const C = Math.abs(y - i), O = Math.abs(k - f);
        (C > d || O > d) && (l !== null && (clearTimeout(l), l = null), a = !1);
      }
    };
    n.addEventListener("pointerdown", c), n.addEventListener("pointerup", m), n.addEventListener("pointercancel", m), n.addEventListener("pointerleave", m), n._pressHandlers = _;
  },
  unmounted(n) {
    const e = n._pressHandlers;
    e && (n.removeEventListener("pointerdown", e.down), n.removeEventListener("pointerup", e.up), n.removeEventListener("pointercancel", e.up), n.removeEventListener("pointerleave", e.up), delete n._pressHandlers);
  }
}, dt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ct
}, Symbol.toStringTag, { value: "Module" })), he = {}, pt = {
  mounted(n, e) {
    var T, w, M, P;
    const { fnPThrottle: t, vtTouchInit: o, vtTouchDown: s, vtTouchUp: r } = me(
      n,
      e.value
    );
    o(n);
    const { ujt: l, size: a, scale: i } = e.value;
    let f = { x: 0, y: 0 }, d;
    const c = {
      width: ((w = (T = l == null ? void 0 : l.$global) == null ? void 0 : T.sys) == null ? void 0 : w.zoomwidth) || 1920,
      height: ((P = (M = l == null ? void 0 : l.$global) == null ? void 0 : M.sys) == null ? void 0 : P.zoomheight) || 1200
    }, m = () => {
      var b;
      return i || ((b = l == null ? void 0 : l.$global) == null ? void 0 : b.scale) || 1;
    };
    let h = !1, _, $, y, k, C = a || { w: 0, h: 0 };
    const O = (b) => ({ clientX: b.clientX, clientY: b.clientY }), A = (b) => {
      var Y;
      s(n), b.preventDefault(), d = m(), h = !0;
      const { clientX: j, clientY: U } = O(b);
      _ = j - window.scrollX, $ = U - window.scrollY, y = n.offsetWidth, k = n.offsetHeight;
      const R = (Y = window.getComputedStyle(n).transform) == null ? void 0 : Y.split(", ");
      if (R && R.length > 2) {
        const se = R.pop().slice(0, -1), _e = R.pop();
        f = {
          x: parseFloat(_e),
          y: parseFloat(se)
        };
      } else
        f = { x: 0, y: 0 };
      n.style.transform = `translate(${f.x}px,${f.y}px)`, b instanceof PointerEvent && n.setPointerCapture(b.pointerId), document.addEventListener(
        "pointermove",
        z
      ), document.addEventListener("pointerup", E), document.addEventListener(
        "pointercancel",
        E
      );
    }, z = (b) => {
      h && t(() => {
        const { clientX: j, clientY: U } = O(b), F = (j - window.scrollX - _) / d, R = (U - window.scrollY - $) / d;
        C.w = Math.min(
          Math.max(88, y + F),
          c.width - f.x
        ), C.h = Math.min(
          Math.max(58, k + R),
          c.height - f.y
        ), n.style.width = C.w + "px", n.style.height = C.h + "px";
      });
    }, E = (b) => {
      r(n), b instanceof PointerEvent && n.hasPointerCapture(b.pointerId) && n.releasePointerCapture(b.pointerId), h = !1, document.removeEventListener(
        "pointermove",
        z
      ), document.removeEventListener(
        "pointerup",
        E
      ), document.removeEventListener(
        "pointercancel",
        E
      );
    }, I = document.createElement("div");
    I.classList.add("resize-bottom-right"), n.appendChild(I), I.addEventListener(
      "pointerdown",
      A
    ), he.unmounted = () => {
      I.removeEventListener(
        "pointerdown",
        A
      ), I && I.remove();
    };
  },
  unmounted(n) {
    typeof (he == null ? void 0 : he.unmounted) == "function" && he.unmounted();
  }
}, ft = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: pt
}, Symbol.toStringTag, { value: "Module" })), mt = {
  // 指令挂载到元素上时调用
  mounted(n, e) {
    var P, b, j, U;
    const { fnPThrottle: t, vtTouchInit: o, vtTouchDown: s, vtTouchUp: r } = me(
      n,
      e.value
    );
    o(n);
    const { ujt: l, scale: a, id: i, type: f, cut: d, min: c } = e.value, m = () => {
      var F;
      return a || ((F = l == null ? void 0 : l.$global) == null ? void 0 : F.scale) || 1;
    }, h = {
      width: ((b = (P = l == null ? void 0 : l.$global) == null ? void 0 : P.sys) == null ? void 0 : b.zoomwidth) || 1920,
      height: ((U = (j = l == null ? void 0 : l.$global) == null ? void 0 : j.sys) == null ? void 0 : U.zoomheight) || 1200
    };
    let _ = d || 0;
    f ? h.height = h.height - _ : h.width = h.width - _;
    function $() {
      return typeof c == "function" ? c() : typeof (c == null ? void 0 : c.value) == "number" ? c == null ? void 0 : c.value : typeof c == "number" ? c : 100;
    }
    let y, k = 1, C = !1, O = 0, A = 0, z = 0, E = 0;
    const I = (F) => {
      if (y = document.getElementById(i), !y) {
        console.error(`未找到 ID 为 ${i} 的元素`);
        return;
      }
      s(n), F.preventDefault(), k = m(), C = !0, f ? (z = F.clientY, E = y.offsetHeight) : (O = F.clientX, A = y.offsetWidth), document.addEventListener("pointermove", T), document.addEventListener("pointerup", w);
    }, T = (F) => {
      C && t(() => {
        if (f) {
          const R = (z - F.clientY) / k, Y = Math.max($(), E + R);
          y.style.height = Math.min(Y, h.height) + "px", y.style.minHeight = Math.min(Y, h.height) + "px";
        } else {
          const R = (O - F.clientX) / k, Y = Math.max($(), A + R);
          y.style.width = Math.min(Y, h.width) + "px", y.style.minWidth = Math.min(Y, h.width) + "px";
        }
      });
    }, w = () => {
      C = !1, r(n), document.removeEventListener("pointermove", T), document.removeEventListener("pointerup", w);
    };
    n.addEventListener("pointerdown", I);
    const M = () => {
      n.removeEventListener("pointerdown", I);
    };
    n.__unmountResize = M;
  },
  // 指令从元素上卸载时调用
  unmounted(n) {
    n.__unmountResize && (n.__unmountResize(), delete n.__unmountResize);
  }
}, gt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: mt
}, Symbol.toStringTag, { value: "Module" })), ht = {
  mounted(n) {
    n.scrollTop = n.scrollHeight;
    const e = {
      autoScrollEnabled: !0,
      handler: () => {
        const t = Math.abs(n.scrollHeight - n.scrollTop - n.clientHeight) < 10;
        e.autoScrollEnabled = t;
      }
    };
    n.addEventListener("scroll", e.handler), n.__scrollData__ = e, n.__vueScrollUpdate__ = () => {
      e.autoScrollEnabled && (n.scrollTop = n.scrollHeight);
    };
  },
  updated(n) {
    const e = n.__vueScrollUpdate__;
    e && e();
  },
  beforeUnmount(n) {
    const e = n.__scrollData__;
    e && e.handler && n.removeEventListener("scroll", e.handler), delete n.__vueScrollUpdate__, delete n.__scrollData__;
  }
}, vt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ht
}, Symbol.toStringTag, { value: "Module" })), _t = {
  mounted(n, e) {
    var r, l, a;
    const { ujt: t, lv: o } = (e == null ? void 0 : e.value) || {}, { $global: s } = t;
    o && ((l = (r = s == null ? void 0 : s.user) == null ? void 0 : r.info) == null ? void 0 : l.lv) < o && n != null && n.classList && !((a = n.classList) != null && a.contains("asailevel")) && n.classList.add("asailevel");
  }
}, yt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: _t
}, Symbol.toStringTag, { value: "Module" })), bt = {
  mounted(n, e) {
  },
  // 在卸载时清理事件监听
  unmounted(n) {
  }
}, $t = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: bt
}, Symbol.toStringTag, { value: "Module" })), wt = (n, e = "webserver") => {
  const { $model: t, $global: o, $fn: s } = n;
  return s.api[e] || (s.api[e] = new s.AsaiApi({
    baseURL: s.As.getUrlByCfg(o.link.api[e], 0),
    Userinfo: o.user.info,
    ujt: n
  }), s.api[e].ictReq(async ({ url: r, opt: l }) => {
    var a;
    return l != null && l.mm && ((a = o == null ? void 0 : o.code) != null && a.token) && (l.headers.Userinfo = `${o.code.token}`), { url: r, opt: l };
  }), s.api[e].ictRes((r) => ([908].includes(r.code) ? r.data = "" : [909, 200].includes(r.code), r))), s.api[e];
}, jt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: wt
}, Symbol.toStringTag, { value: "Module" })), kt = {
  getUrlByCfg(n = null, e = 0) {
    return n != null && n.url ? n.url : n != null && n.port ? (e ? window.location.protocol.includes("s") ? "wss:" : "ws:" : window.location.protocol) + "//" + window.location.hostname + ":" + n.port : e ? window.location.origin.replace("http", "ws") : window.location.origin;
  },
  arrLenMax(n, e, t = 0) {
    return n.length > e && (t ? n.splice(e, n.length - e) : n.splice(0, n.length - e)), n;
  },
  setCookies(n, e, t = 0, o = "/") {
    let s = "";
    if (t) {
      const r = /* @__PURE__ */ new Date();
      r.setTime(r.getTime() + t), s = "; expires=" + r.toUTCString();
    }
    document.cookie = n + "=" + encodeURIComponent(e) + s + "; path=" + (o || "/");
  },
  // cookies储存数据到本地缓存
  cookiesSet(n, e, t = 0, o = "/") {
    try {
      let s = "";
      if (t) {
        const r = /* @__PURE__ */ new Date();
        r.setTime(r.getTime() + t), s = "; expires=" + r.toUTCString();
      }
      document.cookie = n + "=" + e + s + "; path=" + (o || "/");
    } catch {
    }
  },
  // cookies读取本地缓存数据
  cookiesGet(n) {
    try {
      const e = document.cookie;
      let t = e.substring(
        e.indexOf(n + "=") + (n + "=").length
      );
      const o = t.indexOf("; ");
      return o > -1 ? t.substring(0, o) : t;
    } catch {
    }
    return "";
  },
  cookiesDel(n) {
    this.setCookies(n, "", -1e3);
  },
  cookiesClear() {
    const n = document.cookie.split("; ");
    for (let e = 0; e < n.length; e++) {
      const t = n[e], o = t.indexOf("="), s = o > -1 ? t.substring(0, o) : t;
      document.cookie = s + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
    }
  },
  readFile(n = null, e = 0) {
    return new Promise((t, o) => {
      if (n) {
        const s = new FileReader();
        e ? s.readAsText(n) : s.readAsDataURL(n), s.onload = () => {
          t(s.result);
        };
      } else
        o();
    });
  },
  apiJsonp(n, e) {
    try {
      let t = document.createElement("script");
      t.type = "text/javascript", t.innerHTML = `
      window.cbdata;
      function asaiJsonp(data) {
        cbdata=data;
      }`, document.body.appendChild(t);
      let o = document.createElement("script");
      o.src = `${n}&&callback=asaiJsonp`, o.type = "text/javascript", o.async = !0, document.body.appendChild(o), o.onload = () => {
        document.body.removeChild(o), e && e(window == null ? void 0 : window.cbdata), document.body.removeChild(t);
      };
    } catch {
      e && e("ERROR");
    }
  },
  localTime(n, e = 0) {
    if (e) {
      const t = JSON.parse(this.localGet("astime") || "{}");
      t[n] = e, localStorage.setItem("astime", JSON.stringify(t));
    } else {
      const t = JSON.parse(this.localGet("astime") || "{}");
      if (t[n])
        return t[n];
    }
    return 0;
  },
  // 储存数据到本地缓存
  localSet(n, e, t = localStorage) {
    try {
      t.setItem(n, this.toStr(e));
    } catch {
    }
  },
  // 读取本地缓存数据
  localGet(n, e = localStorage) {
    try {
      return e.getItem(n);
    } catch {
    }
    return "";
  },
  //清空本地缓存数据
  localRemove(n, e = localStorage) {
    try {
      return e.removeItem(n);
    } catch {
    }
  },
  // 清空本地所有缓存数据
  localClears(n = null, e = localStorage) {
    if (n != null && n.length) {
      let t;
      for (let o in e)
        t = n.find((s) => o.startsWith(s)), t && this.localRemove(o, e);
    } else
      this.localClear(e);
  },
  // 清空本地所有缓存数据
  localClear(n = localStorage) {
    n.clear();
  },
  // 清空本地所有缓存并刷新界面
  localInit(n = localStorage) {
    this.localClear(n), location.replace("/#"), this.localReload();
  },
  localReload() {
    location.reload();
  },
  getPath(n = "-") {
    return n == null ? void 0 : n.replace(/[^a-zA-Z0-9.\-_\\\/]/g, "");
  },
  getName(n = "-") {
    return n == null ? void 0 : n.replace(/[^a-zA-Z0-9.\-_]/g, "");
  },
  // 阻碍事件向上、向下传播
  eStop(n) {
    const e = window.event || n;
    return e == null || e.preventDefault(), e == null || e.stopPropagation(), !0;
  },
  // 全屏功能
  fullScreen(n = "") {
    const e = n ? document.getElementById(n) : document.documentElement || document.body, t = e.requestFullScreen || e.webkitRequestFullScreen || e.mozRequestFullScreen || e.msRequestFullScreen;
    if (t)
      t.call(e);
    else {
      const { ActiveXObject: o } = window;
      if (typeof o < "u") {
        const s = new o("WScript.Shell");
        s !== null && s.SendKeys("{F11}");
      }
    }
  },
  // 退出全屏
  fullScreenExit() {
    const n = document == null ? void 0 : document.exitFullscreen;
    if (n)
      document.fullscreenElement !== null && n.call(document);
    else {
      const { ActiveXObject: e } = window;
      if (typeof e < "u") {
        const t = new e("WScript.Shell");
        t !== null && t.SendKeys("{F11}");
      }
    }
  },
  // 全屏
  fullScreenDo(n = null) {
    document.fullscreenElement ? this.fullScreenExit() : this.fullScreen(), n && n();
  },
  toNums(n, e = 0) {
    return n && Object.keys(n).forEach((t) => {
      typeof n[t] == "number" && (n[t] = this.toNum(n[t], e));
    }), n;
  },
  toNum(n, e = 0) {
    return typeof n != "number" && typeof n == "string" && (n = Number(n)), Number.isNaN(n) && (n = 0), n && e && (n = Math.round(n * 10 ** e) / 10 ** e), n;
  },
  // 将字符串转换为对象obj
  toObj(n) {
    try {
      return n && typeof n == "string" ? JSON.parse(n) : n;
    } catch {
      return { err: "不是JSON格式数据" };
    }
  },
  // 将对象转换为字符串
  toStr(n) {
    if (typeof n == "string")
      return n;
    try {
      return JSON.stringify(n);
    } catch {
      const t = [];
      return JSON.stringify(n, (o, s) => {
        if (typeof s == "object" && s !== null) {
          if (t.indexOf(s) !== -1)
            return;
          t.push(s);
        }
        return s;
      });
    }
  },
  // 获取当前时间
  getTime(n = 6, e = 0) {
    let t = "", o;
    e ? (e < 9999999999 && (e = e * 1e3), o = new Date(e)) : o = /* @__PURE__ */ new Date();
    const [s, r] = n > 9 ? n + "" : "0" + n;
    function l(a) {
      return +s <= a && +r >= a;
    }
    return l(1) && (t += ("00" + o.getFullYear()).slice(-4) + "-"), l(2) && (t += ("00" + (o.getMonth() + 1)).slice(-2) + "-"), l(3) && (t += ("00" + o.getDate()).slice(-2) + " "), l(4) && (t += ("00" + o.getHours()).slice(-2) + ":"), l(5) && (t += ("00" + o.getMinutes()).slice(-2) + ":"), l(6) && (t += ("00" + o.getSeconds()).slice(-2) + "."), l(7) && (t += ("000" + o.getMilliseconds()).slice(-3) + " "), l(9) ? t.replace(/\D/g, "") : t && t.substring(0, t.length - 1);
  },
  /**
   * 简化版
   * @param startsWord 定义起始字符，如：as
   * @param hex 指定进制，如：10 16 32
   * @returns 12位，前缀字符+时间戳换算+随机数补位，如：eelgullaqnb0
   */
  Uuid(n = "", e = 0, t = 32) {
    return [
      Date.now().toString(36).slice(-9),
      e.toString(36),
      n.slice(-3),
      crypto.getRandomValues(new Uint8Array(6)).reduce((s, r) => s + (r & 15).toString(t), "")
    ].join("").slice(0, 16);
  },
  // 下载txt数据到文件中
  downloadTxt(n = "", e = "") {
    if (n) {
      typeof n == "object" && (n = JSON.stringify(n));
      const t = document.createElement("a");
      t.style.display = "none";
      const o = new Blob([n], {
        type: "application/octet-stream;charset=utf-8"
      }), s = URL.createObjectURL(o);
      t.href = s, t.setAttribute("download", e), document.body.appendChild(t), t.click(), document.body.removeChild(t), URL.revokeObjectURL(s);
    }
  },
  // 防抖：连续操作中，仅在数据持续一段时间不变时fn一次
  debounce(n, e) {
    e != null && e.timeout && (clearTimeout(e.timeout), e.timeout = null), e != null && e.immediate ? (e.timeout || n(), e.timeout = setTimeout(() => {
      e.timeout = null;
    }, e.wait)) : e.timeout = setTimeout(() => {
      n(), clearTimeout(e.timeout), e.timeout = null;
    }, e.wait);
  },
  // 节流:固定长度时间内只能fn一次
  throttle(n, e) {
    e != null && e.timeout && (clearTimeout(e.timeout), e.timeout = null), e != null && e.immediate ? (e.endtime = (/* @__PURE__ */ new Date()).valueOf(), e.endtime - e.starttime > e.wait && (n(), e.starttime = e.endtime)) : e && !(e != null && e.timeout) && (e.timeout = setTimeout(() => {
      n(), clearTimeout(e.timeout), e.timeout = null;
    }, e.wait));
  },
  /**
   * 复制文本到剪贴板（兼容新旧 API）
   * @param text 要复制的文本
   * @returns 成功返回 true，失败返回 false
   */
  async copyToClipboard(n) {
    try {
      return this.localSet("as-clipboard", n), !0;
    } catch (e) {
      throw e;
    }
  },
  /**
   * 从剪贴板读取文本（兼容处理）
   * @returns 成功返回文本内容，失败返回 null 或错误信息
   */
  async readFromClipboard() {
    try {
      return this.localGet("as-clipboard") || "";
    } catch (n) {
      throw n;
    }
  }
}, St = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: kt
}, Symbol.toStringTag, { value: "Module" })), Pt = {
  // 编码
  base64Encode(n) {
    return btoa(unescape(encodeURIComponent(n)));
  },
  // 解码
  base64Decode(n) {
    return decodeURIComponent(escape(atob(n)));
  },
  simpleEncrypt(n, e = 3) {
    return n.split("").map((t) => String.fromCharCode(t.charCodeAt(0) + e)).join("");
  },
  simpleDecrypt(n, e = 3) {
    return n.split("").map((t) => String.fromCharCode(t.charCodeAt(0) - e)).join("");
  },
  hexEncode(n) {
    return n.split("").map((e) => e.charCodeAt(0).toString(16).padStart(2, "0")).join("");
  },
  hexDecode(n) {
    return n.match(/.{1,2}/g).map((e) => String.fromCharCode(parseInt(e, 16))).join("");
  },
  enc(n) {
    const e = this.simpleEncrypt(n, 5);
    return this.base64Encode(e);
  },
  dec(n) {
    const e = this.base64Decode(n);
    return this.simpleDecrypt(e, 5);
  }
}, At = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Pt
}, Symbol.toStringTag, { value: "Module" })), Ot = {
  // 加密
  asencode(n, e) {
    const t = n.length, o = e.length;
    let s = "";
    for (let r = 0; r < t; r++) {
      const l = Math.round(Math.random() * 1e3) % o, a = Number(l.toString().slice(-1)) + 1, i = o - a;
      let f = n.codePointAt(r);
      const d = f % i;
      f = (f - d) / i;
      const c = f % i;
      f = (f - c) / i, s += e[f % i + a] + e[c + a] + e[d + a] + e.charAt(l);
    }
    return s;
  },
  // 解密
  asdecode(n, e) {
    try {
      const t = n.length, o = e.length;
      let s = "";
      for (let r = 0; r < t; r++) {
        const l = e.indexOf(n[r + 3]), a = Number(l.toString().slice(-1)) + 1, i = o - a;
        s += String == null ? void 0 : String.fromCodePoint(
          (e.indexOf(n[r++]) - a) * i * i + (e.indexOf(n[r++]) - a) * i + (e.indexOf(n[r++]) - a)
        );
      }
      return s;
    } catch {
      return "";
    }
  },
  getCodeData(n, e) {
    try {
      return n = JSON.parse(n), JSON.parse(
        this.asdecode(n.data, this.asdecode(n.code, e))
      );
    } catch {
      return;
    }
  },
  sendCodeData(n, e, t) {
    return {
      code: t,
      data: this.asencode(
        JSON.stringify(n),
        this.asdecode(t, e)
      )
    };
  },
  // 打乱字符
  asnewkey(n) {
    const e = [];
    return n.split("").forEach((t) => {
      e.splice(Math.round(Math.random() * e.length), 0, t);
    }), e.join("");
  }
}, Ct = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ot
}, Symbol.toStringTag, { value: "Module" })), Mt = {
  // 全屏功能
  fullScreen(n = "") {
    const e = n ? document.getElementById(n) : document.documentElement || document.body, t = e.requestFullScreen || e.webkitRequestFullScreen || e.mozRequestFullScreen || e.msRequestFullScreen;
    if (t)
      t.call(e);
    else {
      const { ActiveXObject: o } = window;
      if (typeof o < "u") {
        const s = new o("WScript.Shell");
        s !== null && s.SendKeys("{F11}");
      }
    }
  },
  // 退出全屏
  fullScreenExit() {
    const n = (document == null ? void 0 : document.exitFullscreen) || (document == null ? void 0 : document.webkitExitFullScreen) || (document == null ? void 0 : document.mozCancelFullScreen) || (document == null ? void 0 : document.msExitFullScreen);
    if (n)
      document.fullscreenElement !== null && n.call(document);
    else {
      const { ActiveXObject: e } = window;
      if (typeof e < "u") {
        const t = new e("WScript.Shell");
        t !== null && t.SendKeys("{F11}");
      }
    }
  },
  // 全屏
  fullScreenDo(n = null) {
    document.fullscreenElement ? this.fullScreenExit() : this.fullScreen(), n && n();
  }
}, Tt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Mt
}, Symbol.toStringTag, { value: "Module" })), Lt = {
  initHash(n = {}) {
    window.addEventListener("hashchange", () => {
      var e;
      n.hash = ((e = window.location.hash) == null ? void 0 : e.replace("#", "")) || "", this.setRouter(n);
    });
  },
  // 获取当前页面的完整 URL
  getHref() {
    var n;
    return (n = window == null ? void 0 : window.location) == null ? void 0 : n.href;
  },
  // 设置 URL 的 hash 值
  setHash(n = {}, e = "") {
    e && !e.startsWith("/") && (e = `/${e}`), n.hash = e || "", window.location.hash = n.hash;
  },
  // 解析查询参数
  getQuery(n = {}, e = "") {
    return n.query = {}, e && e.split("&").forEach((t) => {
      const [o, s] = t.split("=");
      o && s && (n.query[o] = decodeURIComponent(s));
    }), n.query;
  },
  // 将 hash 字符串拆分成数组
  getHasharr(n) {
    let e = n.hash;
    if (n.hasharr = [], e) {
      e.startsWith("/") && (e = e.slice(1));
      const [t, o] = e.split("?");
      let s = (t == null ? void 0 : t.split("/")) || [];
      for (; s.length > 0 && s[s.length - 1] === ""; )
        s.pop();
      n.hasharr = s, this.getQuery(n, o);
    }
    return n.hasharr;
  },
  // 设置路由组件信息
  setRouter(n) {
    var o, s;
    this.getHasharr(n);
    const e = n.hasharr || [], t = ((o = n.hasharr) == null ? void 0 : o.length) || 0;
    if (n.comps = [], t > 0) {
      let r = "";
      for (let l = 0; l < t; l++)
        r = `${r}${e[l]}/`, l == t - 1 ? n.comps[l] = `${r}default` : n.comps[l] = `${r}index`;
    }
    return (s = n.comps) != null && s.length || (n.comps[0] = "default"), n.comps;
  }
}, zt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Lt
}, Symbol.toStringTag, { value: "Module" })), Ut = (n) => {
  const { $fn: e, $db: t, $global: o, $model: s } = n.ujt;
  function r() {
    return t[n.opt.channel].dbtype == "file" ? "/api/asaichannel/file" : "/api/asaichannel/sqlite";
  }
  function l() {
    return Object.keys(t[n.opt.channel].rfdata.lang);
  }
  function a() {
    return l().join("-");
  }
  function i(b = 0) {
    const j = {
      model: n.opt.model,
      channel: n.opt.channel
    };
    return b && (j.field = a()), j;
  }
  function f(b = 0) {
    return "?" + new URLSearchParams(i(b)).toString();
  }
  function d() {
    t[n.opt.channel] = {
      stat: 0,
      fetch: _,
      setpage: y,
      pagelist: []
    }, e.initmodel(
      n.opt.model + "/channel/" + n.opt.channel + ".json"
    ).then((b) => {
      var j, U;
      Object.assign(t[n.opt.channel], b), t[n.opt.channel].rfdata = {
        rule: {
          ...((j = s.data.sys.asaichannel) == null ? void 0 : j.rule) || {},
          ...((U = t[n.opt.channel]) == null ? void 0 : U.rule) || {}
        },
        lang: G(() => ({
          ...o.lang[n.opt.channel].data,
          ...o.lang.asaichannel.data
        }))
      }, t[n.opt.channel].stat = 1;
    });
  }
  function c() {
    const b = P();
    t[n.opt.channel].rfdata.data = {}, Object.keys(t[n.opt.channel].rfdata.lang).forEach(
      (j) => {
        t[n.opt.channel].rfdata.data[j] = b[j] ? b[j]() : "";
      }
    );
  }
  function m(b) {
    b && e.api.webserver.apiGet(r() + "/select/" + b + "/", i(1)).then((j) => {
      t[n.opt.channel].rfdata.data = j.data[0];
    });
  }
  function h(b, j = 0) {
    e.setquery({ fl: b }), t[n.opt.channel].fetch(0), n.opt.one ? A("list", j) : c();
  }
  function _(b = 1, j = 0) {
    var F, R;
    const U = ((F = l()) == null ? void 0 : F[1]) || "tit";
    e.api.webserver.apiGet(r() + "/select/", {
      ...i(),
      svty: j,
      fd: "sn-" + U,
      ps: t[n.opt.channel].cmPageSize,
      ...(R = o.location) == null ? void 0 : R.query
    }).then((Y) => {
      t[n.opt.channel].list = Y.data, $(b);
    });
  }
  function $(b = 1) {
    var j, U;
    b || e.api.webserver.apiGet(r() + "/select/", {
      ...i(),
      fd: "sn",
      ...(j = o.location) == null ? void 0 : j.query,
      sx: "",
      sxty: "",
      pc: 0,
      pg: 0,
      ps: Number((U = t[n.opt.channel].config) == null ? void 0 : U.pmax) || 1e4
    }).then((F) => {
      var R;
      e.setquery({ pc: (R = F.data) == null ? void 0 : R.length }, 1);
    });
  }
  function y(b) {
    var j;
    e.setquery({ pg: b || 1 }, 1), _(((j = o.location.query) == null ? void 0 : j.pc) || 0);
  }
  function k(b) {
    e.api.webserver.apiPost(r() + "/delete/" + b + f(1)).then((j) => {
      _(0, 1);
    });
  }
  function C(b, j = 0) {
    n.opt.one && A("edit", j), e.setquery({ show: b, showty: "1" }, 1), m(b);
  }
  function O(b) {
    o.pop["popconfirm" + n.opt.channel].stat = 1, o.pop["popconfirm" + n.opt.channel].full = 2, o.pop["popconfirm" + n.opt.channel].con = b.con, o.pop["popconfirm" + n.opt.channel].fn = b.fn;
  }
  function A(b, j = 0) {
    j > -1 && e.sethash(
      o.location.hash.replace(
        "/" + o.location.hasharr[j || n.opt.ty || 1],
        "/" + b
      )
    );
  }
  function z(b, j = 0) {
    n.opt.one && A("show", j), e.setquery({ show: b, showty: "" }, 1), m(b);
  }
  function E() {
    var b, j;
    !o.location.query.ssty && o.location.query.ss && (o.location.query.ssty = (j = (b = t[n.opt.channel]) == null ? void 0 : b.sss) == null ? void 0 : j[1]), e.setquery({ pg: 1 }, 1), t[n.opt.channel].fetch(0);
  }
  function I(b = 0) {
    w() && e.api.webserver.apiPost(
      r() + "/insert/" + t[n.opt.channel].rfdata.data.sn + f(1),
      t[n.opt.channel].rfdata.data
    ).then((j) => {
      o.msg.fn({
        type: "ok",
        con: o.lang.asai.successadd
      }), t[n.opt.channel].fetch(0, 1), n.opt.one ? A("list", b) : c();
    });
  }
  function T() {
    return Object.entries(t[n.opt.channel].rfdata.rule).filter((b) => {
      var j;
      return (j = b[1]) == null ? void 0 : j.require;
    }).map((b) => b[0]);
  }
  function w() {
    var j;
    const b = T();
    if (b.length) {
      for (let U = 0; U < b.length; U++)
        if (!t[n.opt.channel].rfdata.data[b[U]])
          return o.msg.fn({
            type: "err",
            con: e.lg(
              "asai.checkrequire",
              ((j = t[n.opt.channel].rfdata.lang) == null ? void 0 : j[b[U]]) || b[U]
            )
          }), !1;
    }
    return !0;
  }
  function M(b = 0) {
    w() && e.api.webserver.apiPost(
      r() + "/update/" + t[n.opt.channel].rfdata.data.sn + "/" + f(1),
      t[n.opt.channel].rfdata.data
    ).then((j) => {
      o.msg.fn({
        type: "ok",
        con: o.lang.asai.successedit
      }), t[n.opt.channel].fetch(1, 1), n.opt.one && A("list", b);
    });
  }
  function P() {
    const b = {
      sn: () => e.As.Uuid(n.opt.channel.substring(0, 2)),
      hi: () => 1,
      xi: () => 1,
      yi: () => 0,
      tm: () => Date.now(),
      tx: () => Date.now(),
      us: () => o.user.info.us
    };
    return o.location.query.fl && (b.class = () => o.location.query.fl), b;
  }
  return {
    initChannel: d,
    initAddChannel: c,
    setChannelClass: h,
    delItem: k,
    editItem: C,
    readItem: m,
    optConfirm: O,
    setPage: y,
    setShow: z,
    fetchContent: _,
    searchSubmit: E,
    addContent: I,
    editContent: M,
    getDefaultValue: P,
    setChannelHash: A
  };
}, Et = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ut
}, Symbol.toStringTag, { value: "Module" })), xt = (n) => {
  const { $global: e } = n.ujt;
  function t(o) {
    const s = Number(e.location.query.pc) || 0, r = s === 0 ? 0 : Math.ceil(s / o);
    if (r === 0) return [];
    let l = Math.min(
      Math.max(Number(e.location.query.pg) || 1, 1),
      r
    ), a = Math.max(l - Math.floor(o / 2), 1), i = a + o - 1;
    return i > r && (i = r, a = Math.max(i - o + 1, 1)), Array.from(
      { length: i - a + 1 },
      (f, d) => a + d
    );
  }
  return { getPageList: t };
}, It = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: xt
}, Symbol.toStringTag, { value: "Module" })), Dt = (n) => {
  const { ujt: e } = n, { $fn: t, $db: o, $global: s } = n.ujt, { initToken: r, userLoginWs: l, getOnline: a } = t.useInitUser(
    e,
    "webserver"
  ), i = G(() => Object.entries(t.lg("channeluser.lv")).filter((b) => {
    var j;
    return ((j = s.user.info) == null ? void 0 : j.lv) > b[0];
  }));
  function f() {
    var P, b, j, U;
    (P = o.channeluser) != null && P.stat || (o.channeluser = {
      cur: {
        us: ((b = s.location.query) == null ? void 0 : b.us) || ((U = (j = s.user) == null ? void 0 : j.info) == null ? void 0 : U.us) || "",
        pw: "",
        pwn: "",
        pwnn: "",
        lv: 1,
        msg: ""
      },
      stat: 0,
      rfdata: {
        lang: G(() => s.lang.channeluser.data)
      }
    }, t.initmodel("sys/channel/channeluser.json").then((F) => {
      Object.assign(o.channeluser, F), o.channeluser.stat = 1;
    }));
  }
  function d() {
    return new Promise((P, b) => {
      o.channeluser.cur.us ? t.api.webserver.apiGet(
        "/api/user/userinfo/select/" + o.channeluser.cur.us + "/",
        "",
        {
          mm: 1
        }
      ).then((j) => {
        var U, F, R, Y, se, _e, we, je, ke, Se;
        (se = j.data[0]) != null && se[(Y = Object.keys(
          (R = (F = s.lang) == null ? void 0 : F[(U = o.channeluser) == null ? void 0 : U.sn]) == null ? void 0 : R.data
        )) == null ? void 0 : Y[1]] ? P(
          (Se = j.data[0]) == null ? void 0 : Se[(ke = Object.keys(
            (je = (we = s.lang) == null ? void 0 : we[(_e = o.channeluser) == null ? void 0 : _e.sn]) == null ? void 0 : je.data
          )) == null ? void 0 : ke[1]]
        ) : b();
      }).catch((j) => {
        b(j);
      }) : b();
    });
  }
  function c() {
    d().then((P) => {
      s.msg.fn({
        type: "err",
        tit: t.lg("channeluser.msg.userexist", [
          o.channeluser.cur.us
        ])
      });
    }).catch((P) => {
      o.channeluser.cur.us && o.channeluser.cur.pw ? w() : s.msg.fn({
        type: "err",
        con: t.lg("channeluser.msg.regerr", [
          o.channeluser.cur.us
        ])
      });
    });
  }
  function m(P) {
    P.us && (s.user.info = {
      us: P.us,
      lv: P.lv || 1
    }, r(), l().then((b) => {
      h();
    }));
  }
  function h(P) {
    var b, j;
    t.As.localSet(
      "as-user-info",
      t.AsAES.enc(t.As.toStr(s.user.info))
    ), s.msg.fn({
      type: "ok",
      con: t.lg("channeluser.msg.loginok", [(j = (b = s.user) == null ? void 0 : b.info) == null ? void 0 : j.us])
    }), t.sethash("");
  }
  function _() {
    d().then((P) => {
      const b = JSON.parse(P);
      o.channeluser.cur.pw === b.pw ? m(b) : s.msg.fn({
        type: "err",
        tit: t.lg("channeluser.msg.passworderr")
      });
    }).catch((P) => {
      s.msg.fn({
        type: "err",
        con: t.lg("channeluser.msg.loginerr", [
          o.channeluser.cur.us
        ])
      });
    });
  }
  function $() {
    t.exit(), setTimeout(() => {
      t.sethash(""), t.As.localReload();
    }, 1e3);
  }
  function y(P) {
    return P.pw = o.channeluser.cur.pwn, t.api.webserver.apiPost(
      "/api/user/userinfo/update/" + P.us + "/",
      {
        us: P.us,
        pw: P.pw,
        lv: P.lv
      },
      {
        mm: 1
      }
    ).then((b) => {
      s.msg.fn({
        type: "ok",
        con: t.lg("channeluser.msg.editok", [P.us])
      });
    }).catch((b) => {
      s.msg.fn({
        type: "err",
        con: t.lg("channeluser.msg.editerr", [P.us])
      });
    });
  }
  function k() {
    o.channeluser.cur.pwn && o.channeluser.cur.pwn === o.channeluser.cur.pwnn ? d().then((P) => {
      const b = JSON.parse(P);
      o.channeluser.cur.pw === b.pw ? (b.pw = o.channeluser.cur.pwn, y(b)) : s.msg.fn({
        type: "err",
        tit: t.lg("channeluser.msg.passworderr")
      });
    }).catch((P) => {
      s.msg.fn({
        type: "err",
        con: t.lg("channeluser.msg.nouser", [
          o.channeluser.cur.us
        ])
      });
    }) : s.msg.fn({
      type: "err",
      con: t.lg("channeluser.msg.passwordtips")
    });
  }
  function C(P = 1, b = 0) {
    var j;
    t.api.webserver.apiGet("/api/user/userinfo/selectlist/", {
      svty: b,
      fd: "us-lv",
      ps: o.channeluser.cmPageSize,
      ...(j = s.location) == null ? void 0 : j.query
    }).then((U) => {
      o.channeluser.list = U.data, O(P);
    });
  }
  function O(P = 1) {
    var b, j;
    +P == 0 && t.api.webserver.apiGet("/api/user/userinfo/selectlist/", {
      fd: "us",
      ...(b = s.location) == null ? void 0 : b.query,
      sx: "",
      sxty: "",
      pc: 0,
      pg: 0,
      ps: Number((j = o.channeluser.config) == null ? void 0 : j.pmax) || 1e4
    }).then((U) => {
      var F;
      t.setquery({ pc: (F = U.data) == null ? void 0 : F.length }, 1);
    });
  }
  function A(P) {
    var b;
    t.setquery({ pg: P || 1 }, 1), C(((b = s.location.query) == null ? void 0 : b.pc) || 0);
  }
  function z() {
    return t.api.webserver.apiPost(
      "/api/user/userinfo/update/" + o.channeluser.cur.us + "/",
      {
        us: o.channeluser.cur.us,
        pw: o.channeluser.cur.pw,
        lv: o.channeluser.cur.lv
      },
      { mm: 1 }
    ).then((P) => {
      s.msg.fn({
        type: "ok",
        con: t.lg("channeluser.msg.editok", [
          o.channeluser.cur.us
        ])
      }), C(1, 0), s.pop.popedituser.stat = 0;
    }).catch((P) => {
      s.msg.fn({
        type: "err",
        con: t.lg("channeluser.msg.editerr", [
          o.channeluser.cur.us
        ])
      });
    });
  }
  function E() {
    d().then((P) => {
      P && (typeof P == "string" && (P = JSON.parse(P)), o.channeluser.cur.us = P.us, o.channeluser.cur.pw = P.pw, o.channeluser.cur.lv = P.lv || 1);
    }).catch((P) => {
      s.msg.fn({
        type: "err",
        tit: t.lg("channeluser.msg.nouser", [
          o.channeluser.cur.us
        ])
      });
    });
  }
  function I() {
    return t.api.webserver.apiGet("/api/user/userinfo/delete/" + o.channeluser.cur.us + "/").then((P) => {
      s.msg.fn({
        type: "ok",
        tit: t.lg("channeluser.msg.delok", [
          o.channeluser.cur.us
        ])
      }), C(0, 1);
    }).catch((P) => {
      o.channeluser.cur.msg = t.lg("channeluser.msg.delerr", [
        o.channeluser.cur.us
      ]), s.msg.fn({
        type: "err",
        tit: o.channeluser.cur.msg
      });
    });
  }
  function T(P = "") {
    P && (o.channeluser.cur.us = P), d().then((b) => {
      b && (typeof b == "string" && (b = JSON.parse(b)), s.user.info.lv > b.lv && s.user.info.us != b.us ? I() : (o.channeluser.cur.msg = t.lg(
        "channeluser.msg.delerr",
        [o.channeluser.cur.us]
      ), s.msg.fn({
        type: "err",
        tit: o.channeluser.cur.msg
      })));
    }).catch((b) => {
      s.msg.fn({
        type: "err",
        tit: t.lg("channeluser.msg.delerr", [
          o.channeluser.cur.us
        ])
      });
    });
  }
  function w() {
    return t.api.webserver.apiPost(
      "/api/user/userinfo/insert/" + o.channeluser.cur.us + "/",
      {
        us: o.channeluser.cur.us,
        pw: o.channeluser.cur.pw,
        lv: o.channeluser.cur.lv
      }
    ).then((P) => {
      s.msg.fn({
        type: "ok",
        con: t.lg("channeluser.msg.regok", [
          o.channeluser.cur.us
        ])
      }), C(0, 1);
    }).catch((P) => {
      s.msg.fn({
        type: "err",
        tit: t.lg("channeluser.msg.regerr", [
          o.channeluser.cur.us
        ])
      });
    });
  }
  function M() {
    d().then((P) => {
      s.msg.fn({
        type: "err",
        tit: t.lg("channeluser.msg.userexist", [
          o.channeluser.cur.us
        ])
      });
    }).catch((P) => {
      w(), s.pop.popadduser.stat = 0;
    });
  }
  return {
    initUserChannel: f,
    userReg: c,
    userLogin: _,
    userExit: $,
    userEdit: k,
    fetchContent: C,
    getOnline: a,
    editUser: z,
    initUser: E,
    delUser: T,
    addUser: M,
    setPage: A,
    cmLvList: i,
    userLoginWs: l
  };
}, Ft = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Dt
}, Symbol.toStringTag, { value: "Module" })), Rt = (n) => {
  const { $fn: e, $model: t, $db: o, $dbwork: s, $global: r } = n;
  function l(a = "testkdd") {
    const i = Ae("$vueProxy");
    i == null || i.$installplugs(a), i != null && i["$engine" + a] && (Object.assign(e, i["$engine" + a]), i != null && i["$engineuse" + a] && Object.assign(e, i["$engineuse" + a])), t[a] || (t[a] = {}), s[a] || (s[a] = {}), o[a] || (o[a] = {}), e.setconfig = (d, c) => e.api.webserver.apiPost(
      "/api/asaijson/manage/update/?path=./webclient/webmodel/sys/setting/" + d + ".json",
      c
    ), e.changelangpro = (d = "") => e.changelang(r.config.langcur || d).then((c) => {
      var m, h, _;
      (h = (m = r == null ? void 0 : r.sys) == null ? void 0 : m.local) != null && h.lang ? a && ((_ = e.ws) != null && _[a]) && e.ws[a].wsSend({
        id: "1",
        ty: "common/setlanguage",
        db: c
      }) : e.setconfig("settinglang", {
        lang: d
      });
    }), e.changethemepro = (d = "") => {
      var c, m;
      return (m = (c = r == null ? void 0 : r.sys) == null ? void 0 : c.local) != null && m.theme ? e.changetheme(d) : e.setconfig("settingtheme", {
        theme: d
      });
    };
    const f = [e.initlang(r.config.langcur || "")];
    return f.push(
      e.initmodel(a + "/dirmodel.json").then((d) => {
        d && Object.assign(t[a], d);
      })
    ), Promise.all(f);
  }
  return { initAppModel: l };
}, Wt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Rt
}, Symbol.toStringTag, { value: "Module" })), Bt = (n, e = "webserver") => {
  const { $fn: t, $db: o, $global: s } = n;
  function r() {
    return new Promise((c, m) => {
      var h;
      t.ws.web.wsWatch(
        {
          ty: "publish/web"
        },
        (_) => {
          var $, y, k, C, O, A;
          ($ = _ == null ? void 0 : _.db) != null && $.exit && (t.exit(), t.sethash(
            ((C = (k = (y = s.sys) == null ? void 0 : y.router) == null ? void 0 : k.config) == null ? void 0 : C.login) || "user/login"
          )), (O = _ == null ? void 0 : _.db) != null && O.lang && (_.db.langpm ? _.db.con = t.lg(
            "asai.hostmsg." + _.db.lang,
            _.db.langpm
          ) || _.db.con : _.db.con = t.lg("asai.hostmsg." + _.db.lang) || _.db.con), (_ == null ? void 0 : _.db) === "pong" ? t.ws.web.wsApi("ping").then((z) => {
          }) : (A = _ == null ? void 0 : _.db) != null && A.con && s.msg.fn(_.db);
        }
      ), (h = t.ws.web) == null || h.wsApi({
        ty: "user/login",
        db: s.user.info
      }).then((_) => {
        c(_);
      }).catch((_) => {
        s.msg.fn({
          type: "err",
          con: t.lg("channeluser.msg.loginerr", [
            s.user.info.us
          ])
        }), m(_);
      });
    });
  }
  function l() {
    return t.ws.web.wsApi({
      ty: "user/online",
      db: ""
    }).then((c) => {
      o.channeluser.onlinelist = c.db;
    }).catch((c) => {
    });
  }
  function a() {
    return new Promise((c, m) => {
      var h, _;
      try {
        let $ = (h = t.As) == null ? void 0 : h.localGet("as-user-code");
        $ ? ($ = t.As.toObj($), s.code.pri = $[0], s.code.pub = $[1], c()) : (_ = t.api[e]) == null || _.apiGet("/api/init/code/").then((y) => {
          s.code.pri = y.data[0], s.code.pub = y.data[1], t.As.localSet(
            "as-user-code",
            t.As.toStr(y.data)
          ), c();
        });
      } catch ($) {
        m($);
      }
    });
  }
  function i() {
    var c, m, h;
    (c = s.user.info) != null && c.us && (s.code.token = t.AsCode.asencode((m = s.user.info) == null ? void 0 : m.us, s.code.pri) + "##" + t.AsCode.asencode((h = s.user.info) == null ? void 0 : h.lv, s.code.pri) + "##" + s.code.pub);
  }
  function f() {
    return new Promise((c, m) => {
      try {
        a().then(() => {
          !s.code.token && s.code.pri && t.As.localGet("as-user-info") && (s.user.info = t.As.toObj(
            t.AsAES.dec(t.As.localGet("as-user-info"))
          ), i()), c();
        }).catch((h) => {
          m(h);
        });
      } catch (h) {
        m(h);
      }
    });
  }
  function d() {
    return new Promise((c, m) => {
      s.user.online = 0;
      try {
        f().then(() => {
          s.code.token && r().then((h) => {
            s.user.online = 1, c();
          });
        }).catch((h) => {
          m(h);
        });
      } catch (h) {
        m(h);
      }
    });
  }
  return {
    initServer: a,
    initUserToken: f,
    initToken: i,
    initUserOnline: d,
    userLoginWs: r,
    getOnline: l
  };
}, Ht = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Bt
}, Symbol.toStringTag, { value: "Module" })), qt = ie({
  providedb: {
    data: {}
  }
}), Yt = ie({
  providedbwork: {
    data: {}
  }
}), Xt = ie({
  provideglobal: {
    data: {
      sys: null,
      config: {
        theme: "theme-light",
        lang: "",
        langcur: ""
      },
      theme: "",
      stat: { webclient: 0, web: 0, cocontrol: 0 },
      user: {
        info: null,
        online: 0
      },
      code: { pri: null, pub: null, token: "" },
      location: {},
      pop: {},
      url: {},
      module: { value: "", label: "" },
      keyboard: { areastyle: {}, opt: {}, isshow: 0 }
    }
  }
}), Vt = ie({
  providews: {
    data: {}
  }
}), Pe = {
  providefn: { data: { api: {}, ws: {}, workers: {} } }
}, Nt = (n) => {
  const { AsaiJsAs: e } = n, t = window;
  Object.assign(Pe.providefn.data, { ...e, ...n });
  const o = {
    $db: qt.providedb.data,
    $dbwork: Yt.providedbwork.data,
    $ws: Vt.providews.data,
    $global: Xt.provideglobal.data,
    $model: t.$GYS.$webmodel,
    $fn: Pe.providefn.data
  };
  t.$GYS.ujt = o, o.$fn.lo = (...d) => {
    var c;
    if ((c = o.$global.sys) != null && c.onconsole) {
      if (!(d != null && d[0]))
        o.$model.gysfn.log();
      else if (d.length > 0) {
        let m = "", h = "", _ = "";
        if (d[1] && typeof d[1] == "string") {
          const [$, y, ...k] = d;
          h = y, _ = k, Array.isArray(d[0]) && d[0].length === 2 ? m = r(d[0][0], d[0][1], "12px") : typeof d[0] == "number" && (m = s($, 12));
        }
        m ? console.log("%c" + h, m, ..._) : console.log(...d);
      }
    }
  }, o.$model.gysfn.log = () => (console.log(
    "%c$fn",
    s(6, 18),
    l(o.$fn),
    o.$fn
  ), console.log(
    "%c$model",
    s(5, 18),
    l(o.$model),
    o.$model
  ), console.log(
    "%c$global",
    s(4, 18),
    l(o.$global),
    o.$global
  ), console.log(
    "%c$ws",
    s(3, 18),
    l(o.$ws),
    o.$ws
  ), console.log(
    "%c$db",
    s(2, 18),
    l(o.$db),
    o.$db
  ), console.log(
    "%c$dbwork",
    s(1, 18),
    l(o.$dbwork),
    o.$dbwork
  ), "Web Model Log。");
  function s(d, c = 18) {
    let m = "";
    return d === 1 ? m = r("black", "pink", c + "px") : d === 2 ? m = r("black", "cyan", c + "px") : d === 3 ? m = r("black", "yellow", c + "px") : d === 4 ? m = r("white", "blue", c + "px") : d === 5 ? m = r("white", "red", c + "px") : d === 6 && (m = r("white", "green", c + "px")), m;
  }
  function r(d, c, m = "18px") {
    return "font-size:" + m + ";font-weight:bold;border-radius:20px;padding:0 10px;color:" + d + ";background-color:" + c + ";";
  }
  function l(d) {
    var c;
    try {
      return "size=>" + ((d && ((c = JSON.stringify(d)) == null ? void 0 : c.length)) / 1024).toFixed(3) + "KB";
    } catch {
      return "";
    }
  }
  const { fetchPublic: a } = o.$fn.AsaiModel("./webmodel/");
  o.$fn.initmodel = a, o.$fn.startLink = () => new Promise((d, c) => {
    o.$fn.initmodel("sys/server.json").then((m) => {
      const h = { api: {}, ws: {} };
      ["api", "ws"].forEach((_) => {
        Object.keys((m == null ? void 0 : m[_]) || {}).forEach(($) => {
          $ != "default" && (h[_][$] = {
            ...m[_][$],
            url: o.$fn.As.getUrlByCfg(
              m[_][$],
              _ == "ws" ? 1 : 0
            )
          });
        });
      }), o.$fn.As.localSet(
        "as-link",
        JSON.stringify(h)
      ), o.$global.link = h, d(o.$global.link);
    }).catch((m) => {
      c(m);
    });
  }), o.$fn.saveLink = (d) => {
    o.$global.link = d, o.$fn.As.localSet(
      "as-link",
      JSON.stringify(o.$global.link)
    );
  }, o.$fn.initLink = (d = 0) => new Promise((c, m) => {
    var h, _;
    if (d)
      o.$fn.startLink().then(($) => {
        c($);
      }).catch(($) => {
        m($);
      });
    else {
      let $ = o.$fn.As.localGet("as-link");
      $ ? (o.$global.link = JSON.parse($), (h = o.$global.link) != null && h.api && ((_ = o.$global.link) != null && _.ws) ? c(o.$global.link) : o.$fn.startLink().then((y) => {
        c(y);
      }).catch((y) => {
        m(y);
      })) : o.$fn.startLink().then((y) => {
        c(y);
      }).catch((y) => {
        m(y);
      });
    }
  });
  const i = /* @__PURE__ */ new Map(), f = /\$(\d+)/g;
  return o.$fn.lg = (d, c) => {
    if (typeof d != "string" || !d)
      return;
    let m = i.get(d);
    m || (m = d.split("."), i.set(d, m));
    const h = m.reduce(
      (y, k) => y == null ? void 0 : y[k],
      o.$global.lang
    );
    if (!c || c.length === 0) return h;
    const _ = Array.isArray(c) ? c : [c];
    return h.replace(
      f,
      (y, k) => {
        const C = parseInt(k, 10) - 1;
        return _[C] ?? y;
      }
    );
  }, o.$fn.changetheme = (d = "") => new Promise((c, m) => {
    var h, _, $, y, k, C, O, A, z, E, I, T, w, M, P, b, j, U, F, R;
    try {
      let Y = "";
      ($ = (_ = (h = o.$global) == null ? void 0 : h.sys) == null ? void 0 : _.local) != null && $.theme ? Y = o.$fn.As.localGet(
        (C = (k = (y = o.$global) == null ? void 0 : y.sys) == null ? void 0 : k.local) == null ? void 0 : C.theme
      ) || o.$model.data.sys.settingtheme.theme || o.$model.data.sys.configdata.theme[0] : Y = o.$model.data.sys.settingtheme.theme || o.$model.data.sys.configdata.theme[0], d && Y === d ? c() : (d === "auto" ? Y = Y == o.$model.data.sys.configdata.theme[0] ? o.$model.data.sys.configdata.theme[1] : o.$model.data.sys.configdata.theme[0] : d && (Y = d), (z = (A = (O = o.$global) == null ? void 0 : O.sys) == null ? void 0 : A.local) != null && z.theme && o.$fn.As.localSet(
        (T = (I = (E = o.$global) == null ? void 0 : E.sys) == null ? void 0 : I.local) == null ? void 0 : T.theme,
        Y
      )), Y && ((M = (w = o.$global) == null ? void 0 : w.config) == null ? void 0 : M.theme) !== Y && ((b = (P = o.$global) == null ? void 0 : P.config) != null && b.theme && ((U = (j = document == null ? void 0 : document.body) == null ? void 0 : j.classList) != null && U.contains(
        o.$global.config.theme
      )) && document.body.classList.remove(
        o.$global.config.theme
      ), o.$global.config.theme = Y), (R = (F = document == null ? void 0 : document.body) == null ? void 0 : F.classList) != null && R.contains(Y) || document.body.classList.add(Y), c();
    } catch (Y) {
      m(Y);
    }
  }), o.$fn.initlang = (d = "") => {
    var m, h, _, $, y, k, C;
    let c = "";
    return (_ = (h = (m = o.$global) == null ? void 0 : m.sys) == null ? void 0 : h.local) != null && _.lang ? c = d || o.$fn.As.localGet((k = (y = ($ = o.$global) == null ? void 0 : $.sys) == null ? void 0 : y.local) == null ? void 0 : k.lang) || o.$model.data.sys.settinglang.lang || o.$model.data.sys.configdata.lang[0] : c = d || o.$model.data.sys.settinglang.lang || o.$model.data.sys.configdata.lang[0], (C = o.$global) != null && C.lang || (o.$global.lang = {}), new Promise((O, A) => {
      o.$fn.initmodel("lang/dirlang.json", c + "/").then((z) => {
        Object.assign(o.$global.lang, z), O(o.$global.lang);
      }).catch((z) => {
        A(z);
      });
    });
  }, o.$fn.changelang = (d = "") => {
    var m, h, _, $, y, k;
    let c = "";
    return (_ = (h = (m = o.$global) == null ? void 0 : m.sys) == null ? void 0 : h.local) != null && _.lang ? c = o.$fn.As.localGet((k = (y = ($ = o.$global) == null ? void 0 : $.sys) == null ? void 0 : y.local) == null ? void 0 : k.lang) || o.$model.data.sys.settinglang.lang || o.$model.data.sys.configdata.lang[0] : c = o.$global.config.langcur || o.$model.data.sys.settinglang.lang || o.$model.data.sys.configdata.lang[0], new Promise((C, O) => {
      var A, z, E, I, T, w, M, P, b, j;
      d && c === d && ((A = o.$global) != null && A.lang) ? C(c) : (d === "auto" ? c = c == o.$model.data.sys.configdata.lang[0] ? o.$model.data.sys.configdata.lang[1] : o.$model.data.sys.configdata.lang[0] : d && (c = d), (I = (E = (z = o.$global) == null ? void 0 : z.sys) == null ? void 0 : E.local) != null && I.lang && o.$fn.As.localSet(
        (M = (w = (T = o.$global) == null ? void 0 : T.sys) == null ? void 0 : w.local) == null ? void 0 : M.lang,
        c
      ), (j = (b = (P = o.$global) == null ? void 0 : P.sys) == null ? void 0 : b.local) != null && j.lang || !o.$global.config.lang ? (o.$global.config.lang = c, o.$fn.initlang(c).then((U) => {
        C(c);
      }).catch((U) => {
        O(U);
      })) : C(c));
    });
  }, o.$fn.initweb = async (d) => {
    try {
      let c = function() {
        const { protocol: h, hostname: _, port: $, hash: y } = t.location;
        o.$global.location = {
          protocol: h,
          hostname: _,
          port: $,
          hash: y.replace("#", ""),
          comps: [],
          query: {}
        }, o.$fn.AsRouter.initHash(o.$global.location), k();
        function k() {
          o.$fn.AsRouter.setRouter(o.$global.location);
        }
        o.$fn.setquery = (C = {}, O = 0) => {
          let A;
          O ? A = new URLSearchParams({
            ...o.$global.location.query || {},
            ...C || {}
          }).toString() : A = new URLSearchParams(C || {}).toString(), A ? A = o.$global.location.hash.split("?")[0] + "?" + A : A = o.$global.location.hash.split("?")[0], o.$fn.AsRouter.setHash(
            o.$global.location,
            A
          );
        }, o.$fn.sethash = (C = "") => {
          o.$fn.AsRouter.setHash(
            o.$global.location,
            C
          );
        }, o.$fn.exit = (C = 0) => {
          o.$fn.As.localSet("as-user-info", ""), o.$global.user.info = null, o.$global.code.token = null, C && (o.$fn.sethash(""), o.$fn.As.localReload());
        }, o.$fn.login = () => {
          var C, O, A;
          o.$fn.As.localSet("as-user-info", ""), o.$global.user.info = null, o.$fn.sethash(
            ((A = (O = (C = o.$global.sys) == null ? void 0 : C.router) == null ? void 0 : O.config) == null ? void 0 : A.login) || "user/login"
          );
        };
      };
      Object.assign(o.$fn, d.$engineasai || {}), Object.assign(o.$fn, d.$engineasailib || {});
      const m = await o.$fn.initmodel("sys/dirsys.json");
      if (o.$model.data.sys = m, o.$global.sys = {
        ...m.configsys,
        ...m.settingsys,
        ...m.settingweb
      }, m.configrouter) {
        o.$global.sys.router = m.configrouter;
        for (let h = 0; h < o.$global.sys.router.config.models.length; h++) {
          const _ = await o.$fn.initmodel(
            o.$global.sys.router.config.models[h] + "/configrouter.json"
          );
          typeof _ == "object" && (_ != null && _.config) && Object.entries(_).forEach(
            ([$, y]) => {
              $ === "rights" ? Object.entries(y).forEach(
                ([k, C]) => {
                  C && (o.$global.sys.router.rights[k].includes(C) || o.$global.sys.router.rights[k].push(C));
                }
              ) : Object.assign(
                o.$global.sys.router[$],
                y
              );
            }
          );
        }
      }
      o.$fn.lo(), await o.$fn.initLink(), await o.$fn.changetheme(), c();
    } catch {
    }
  }, o.$fn.initrouter = () => {
    var d, c, m;
    if ((c = (d = o.$global) == null ? void 0 : d.sys) != null && c.devlevel && !o.$global.url[o.$global.module.value]) {
      const h = /^\.\/(.*?)\/default\.vue$/;
      o.$global.url[o.$global.module.value] = [
        ...(m = Object.keys(o.$model.comps)) == null ? void 0 : m.map((_) => {
          if (h.test(_)) {
            const $ = _.match(h);
            if ($)
              return $[1];
          }
          return "";
        }).filter((_) => _),
        ...Object.keys(o.$model.appmodules.indexRouters)
      ].map((_) => ({
        value: _,
        label: _.slice(_.lastIndexOf("/") + 1)
      }));
    }
  }, Ye("$ujtasai", o), {
    ...o,
    $ujtasai: o
  };
}, Jt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Nt
}, Symbol.toStringTag, { value: "Module" })), Gt = (n) => {
  const { $fn: e, $model: t, $global: o, $ws: s } = n;
  s != null && s.beat || (s.beat = {});
  function r(l = "web", a = 0) {
    var i, f;
    (a || (i = o.sys) != null && i.tmbeat) && (s.beat["bt" + l] = setInterval(() => {
      var d;
      s.beat["btm" + l] = setTimeout(() => {
        clearInterval(s.beat["bt" + l]), s.beat["bt" + l] = null, e.exit();
      }, (a || ((d = o.sys) == null ? void 0 : d.tmbeat)) * 1.5), e.ws[l].wsApi("ping").then((c) => {
        c === "pong" && (clearTimeout(s.beat["btm" + l]), s.beat["btm" + l] = null);
      });
    }, a || ((f = o.sys) == null ? void 0 : f.tmbeat)));
  }
  return { pingPong: r };
}, Kt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Gt
}, Symbol.toStringTag, { value: "Module" })), Qt = (n, e = "web") => {
  var s, r;
  const { $global: t, $fn: o } = n;
  return o.ws[e] || (o.ws[e] = new o.AsaiWs({
    wsurl: o.As.getUrlByCfg(t.link.ws[e], 1),
    Userinfo: t.user.info,
    wsname: e,
    wsworker: (s = t.link.ws[e]) == null ? void 0 : s.worker,
    wssec: (r = t.link.ws[e]) == null ? void 0 : r.sec,
    ujt: n
  })), o.ws[e];
}, Zt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Qt
}, Symbol.toStringTag, { value: "Module" })), eo = (n) => {
  function e() {
  }
  return { test: e };
}, to = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: eo
}, Symbol.toStringTag, { value: "Module" })), oo = /* @__PURE__ */ L({
  __name: "AsaiComponent",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $model: t, $global: o } = e.ujt;
    return (s, r) => {
      var l, a, i, f, d, c, m, h, _, $, y, k;
      return g(), X(le(
        u(t).appmodules.indexRouters[((c = (i = (a = (l = u(o).sys) == null ? void 0 : l.router) == null ? void 0 : a.config) == null ? void 0 : i.models) != null && c.includes(
          (d = (f = u(o).location) == null ? void 0 : f.hasharr) == null ? void 0 : d[0]
        ) ? (h = (m = u(o).location) == null ? void 0 : m.hasharr) == null ? void 0 : h[0] : "") || ((k = (y = ($ = (_ = u(o).sys) == null ? void 0 : _.router) == null ? void 0 : $.config) == null ? void 0 : y.models) == null ? void 0 : k[0])]
      ), { ujt: s.ujt }, null, 8, ["ujt"]);
    };
  }
}), no = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: oo
}, Symbol.toStringTag, { value: "Module" })), ao = /* @__PURE__ */ L({
  __name: "AsaiWeb",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $model: t, $global: o } = e.ujt;
    return (s, r) => {
      var a, i;
      const l = x("AsaiComponent");
      return g(), v(
        "div",
        {
          id: "asaiweb",
          class: Z(
            "asaiweb asaiweb" + (((i = (a = u(o).location) == null ? void 0 : a.hasharr) == null ? void 0 : i[0]) || "default")
          )
        },
        [
          B(l, { ujt: s.ujt }, null, 8, ["ujt"])
        ],
        2
        /* CLASS */
      );
    };
  }
}), q = (n, e) => {
  const t = n.__vccOpts || n;
  for (const [o, s] of e)
    t[o] = s;
  return t;
}, Te = /* @__PURE__ */ q(ao, [["__scopeId", "data-v-4e3f6b50"]]), so = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Te
}, Symbol.toStringTag, { value: "Module" })), lo = /* @__PURE__ */ L({
  __name: "AsaiWebServer",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o, $model: s } = e.ujt, { initUserToken: r } = t.useInitUser(e.ujt, "webserver");
    return r(), (l, a) => {
      var f, d, c, m, h;
      const i = x("AsaiComponent");
      return g(), v(
        "div",
        {
          id: "asaiwebserver",
          class: Z("asaiweb asaiweb" + ((d = (f = u(o).location) == null ? void 0 : f.hasharr) == null ? void 0 : d[0]))
        },
        [
          u(o).code.pub ? (g(), X(le(
            ((h = (m = (c = u(o).sys) == null ? void 0 : c.router) == null ? void 0 : m.config) == null ? void 0 : h.loading) || "PageLoadServer"
          ), {
            key: 1,
            ujt: l.ujt
          }, null, 8, ["ujt"])) : (g(), X(i, {
            key: 0,
            ujt: l.ujt
          }, null, 8, ["ujt"]))
        ],
        2
        /* CLASS */
      );
    };
  }
}), Le = /* @__PURE__ */ q(lo, [["__scopeId", "data-v-ba66ad96"]]), io = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Le
}, Symbol.toStringTag, { value: "Module" })), ro = /* @__PURE__ */ L({
  __name: "AsaiWebServerUser",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o } = e.ujt, { initUserToken: s } = t.useInitUser(e.ujt, "webserver");
    return s(), (r, l) => {
      var i, f, d, c, m;
      const a = x("AsaiComponent");
      return g(), v(
        "div",
        {
          id: "asaiwebserveruser",
          class: Z("asaiweb asaiweb" + ((f = (i = u(o).location) == null ? void 0 : i.hasharr) == null ? void 0 : f[0]))
        },
        [
          u(o).code.token ? (g(), X(a, {
            key: 0,
            ujt: r.ujt
          }, null, 8, ["ujt"])) : (g(), X(le(
            ((m = (c = (d = u(o).sys) == null ? void 0 : d.router) == null ? void 0 : c.config) == null ? void 0 : m.loading) || "PageLoadUserToken"
          ), {
            key: 1,
            ujt: r.ujt
          }, null, 8, ["ujt"]))
        ],
        2
        /* CLASS */
      );
    };
  }
}), ze = /* @__PURE__ */ q(ro, [["__scopeId", "data-v-7a0ce151"]]), uo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ze
}, Symbol.toStringTag, { value: "Module" })), co = /* @__PURE__ */ L({
  __name: "AsaiInitPage",
  props: {
    appmodules: {},
    ujt: {}
  },
  setup(n) {
    const e = n, t = Ae("$vueProxy"), { $global: o, $fn: s, $model: r } = e.ujt;
    r.appmodules = e.appmodules, s.initweb(t).then(() => {
      var i, f;
      s.useApi(e.ujt, "webserver"), s.useWs(e.ujt, "web");
      let a = [
        // new Promise((resolve: any, reject: any) => {
        //     $fn.ws['web'].init().finally(() => {
        //         resolve();
        //     });
        // }),
      ];
      (f = (i = o == null ? void 0 : o.sys) == null ? void 0 : i.local) != null && f.lang || a.push(
        s.api.webserver.apiGet(
          "/api/asaifile/manage/once/?path=./webclient/webmodel/sys/setting/settinglang.json"
        ).then((d) => {
          var c, m;
          typeof (d == null ? void 0 : d.data) == "string" ? o.config.langcur = (c = JSON.parse(
            (d == null ? void 0 : d.data) || "{}"
          )) == null ? void 0 : c.lang : o.config.langcur = (m = (d == null ? void 0 : d.data) || {}) == null ? void 0 : m.lang;
        })
      ), Promise.all(a).then(() => {
        s.changelang(o.config.langcur).then((d) => {
          o.lang.sys.webtit && (document.title = o.lang.sys.webtit), o.stat.webclient = 1;
        });
      });
    });
    const l = G(() => {
      var a, i, f, d, c, m, h, _, $, y, k, C, O, A, z, E, I, T, w;
      if (o.location.hash) {
        if ((d = (f = (i = (a = o.sys) == null ? void 0 : a.router) == null ? void 0 : i.rights) == null ? void 0 : f.lv0) != null && d.find(
          (M) => o.location.hash.includes(M)
        ))
          return 0;
        if ((_ = (h = (m = (c = o.sys) == null ? void 0 : c.router) == null ? void 0 : m.rights) == null ? void 0 : h.lv1) != null && _.find(
          (M) => o.location.hash.includes(M)
        ))
          return 1;
        if ((C = (k = (y = ($ = o.sys) == null ? void 0 : $.router) == null ? void 0 : y.rights) == null ? void 0 : k.lv2) != null && C.find(
          (M) => o.location.hash.includes(M)
        ))
          return 2;
        if ((E = (z = (A = (O = o.sys) == null ? void 0 : O.router) == null ? void 0 : A.rights) == null ? void 0 : z.lv3) != null && E.find(
          (M) => o.location.hash.includes(M)
        ))
          return 3;
      } else return 0;
      return (w = (T = (I = o.sys) == null ? void 0 : I.router) == null ? void 0 : T.config) == null ? void 0 : w.lv;
    });
    return $e(() => {
      s.ws.web.wsWatchOff({
        ty: "publish/web"
      });
    }), (a, i) => {
      var m, h, _;
      const f = x("AsaiWebServerUserOnline"), d = x("PopMsg"), c = x("PopBoxConfirm");
      return g(), v(
        D,
        null,
        [
          u(o).stat.webclient ? (g(), v(
            D,
            { key: 0 },
            [
              l.value === 0 ? (g(), X(Te, {
                key: 0,
                ujt: a.ujt
              }, null, 8, ["ujt"])) : l.value === 1 ? (g(), X(Le, {
                key: 1,
                ujt: a.ujt
              }, null, 8, ["ujt"])) : l.value === 2 ? (g(), X(ze, {
                key: 2,
                ujt: a.ujt
              }, null, 8, ["ujt"])) : (g(), X(f, {
                key: 3,
                ujt: a.ujt
              }, null, 8, ["ujt"]))
            ],
            64
            /* STABLE_FRAGMENT */
          )) : (g(), X(le(((_ = (h = (m = u(o).sys) == null ? void 0 : m.router) == null ? void 0 : h.config) == null ? void 0 : _.loading) || "PageLoadClient"), {
            key: 1,
            ujt: a.ujt
          }, null, 8, ["ujt"])),
          i[0] || (i[0] = p(
            "div",
            { id: "popteleport" },
            null,
            -1
            /* CACHED */
          )),
          B(d, { ujt: a.ujt }, null, 8, ["ujt"]),
          B(c, {
            ujt: a.ujt,
            id: "popdefaultconfirm"
          }, null, 8, ["ujt"])
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), po = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: co
}, Symbol.toStringTag, { value: "Module" })), fo = /* @__PURE__ */ L({
  __name: "AsaiWebModule",
  props: {
    ujt: {},
    module: {}
  },
  setup(n) {
    var r, l, a;
    const e = n, { $global: t, $fn: o } = e.ujt;
    t.module.value = (r = e.module) == null ? void 0 : r.value, t.module.label = (l = e.module) == null ? void 0 : l.label, (a = e.module) != null && a.ws && o.useWs(e.ujt, t.module.value);
    const { initAppModel: s } = o.useInitApp(e.ujt);
    return t.stat[t.module.value] = 0, s(t.module.value).then((i) => {
      t.stat[t.module.value] = 1;
    }), (i, f) => {
      var c, m, h, _;
      const d = x("RouterView");
      return (c = e.module) != null && c.value && u(t).stat[e.module.value] ? (g(), X(d, {
        key: 0,
        ujt: i.ujt,
        ty: 0
      }, null, 8, ["ujt"])) : (g(), X(le(((_ = (h = (m = u(t).sys) == null ? void 0 : m.router) == null ? void 0 : h.config) == null ? void 0 : _.loading) || "PageLoadErr"), {
        key: 1,
        ujt: i.ujt
      }, null, 8, ["ujt"]));
    };
  }
}), mo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: fo
}, Symbol.toStringTag, { value: "Module" })), go = { class: "app-area" }, ho = { class: "app-menu-area" }, vo = ["onPointerup"], _o = { class: "menu-text" }, yo = { class: "app-login" }, bo = /* @__PURE__ */ L({
  __name: "AsaiWebModuleDefault",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t, $fn: o } = e.ujt;
    return o.initrouter(), (s, r) => {
      const l = x("MenuShowFix"), a = x("UserCard");
      return g(), v(
        D,
        null,
        [
          B(l, {
            ujt: s.ujt,
            menus: u(t).url[u(t).module.value]
          }, null, 8, ["ujt", "menus"]),
          p("div", go, [
            r[0] || (r[0] = p(
              "div",
              { class: "app-logo" },
              [
                p("img", {
                  src: "./assets/img/logo.png",
                  width: "200"
                })
              ],
              -1
              /* CACHED */
            )),
            p("div", ho, [
              (g(!0), v(
                D,
                null,
                Q(u(t).url[u(t).module.value], (i) => (g(), v("div", {
                  class: "app-menu",
                  key: i.value,
                  onPointerup: (f) => u(o).sethash(i.value)
                }, [
                  p(
                    "span",
                    _o,
                    S(i.label),
                    1
                    /* TEXT */
                  )
                ], 40, vo))),
                128
                /* KEYED_FRAGMENT */
              ))
            ]),
            p("div", yo, [
              B(a, { ujt: s.ujt }, null, 8, ["ujt"])
            ])
          ])
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), $o = /* @__PURE__ */ q(bo, [["__scopeId", "data-v-4a63b3a5"]]), wo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: $o
}, Symbol.toStringTag, { value: "Module" })), jo = /* @__PURE__ */ L({
  __name: "AsaiWebModuleIndex",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t, $fn: o } = e.ujt;
    return o.initrouter(), (s, r) => {
      const l = x("MenuShowFix"), a = x("RouterView");
      return g(), v(
        D,
        null,
        [
          B(l, {
            ujt: s.ujt,
            menus: u(t).url[u(t).module.value]
          }, null, 8, ["ujt", "menus"]),
          u(t).stat[u(t).module.value] ? (g(), X(a, {
            key: 0,
            ujt: s.ujt,
            ty: 1
          }, null, 8, ["ujt"])) : W("v-if", !0)
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), ko = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: jo
}, Symbol.toStringTag, { value: "Module" })), So = /* @__PURE__ */ L({
  __name: "AsaiWebServerUserOnline",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o } = e.ujt, { initUserOnline: s } = t.useInitUser(e.ujt, "webserver");
    return s(), (r, l) => {
      var i, f, d, c, m;
      const a = x("AsaiComponent");
      return g(), v(
        "div",
        {
          id: "asaiwebserveruseronline",
          class: Z("asaiweb asaiweb" + ((f = (i = u(o).location) == null ? void 0 : i.hasharr) == null ? void 0 : f[0]))
        },
        [
          u(o).code.token && u(o).user.online ? (g(), X(a, {
            key: 0,
            ujt: r.ujt
          }, null, 8, ["ujt"])) : (g(), X(le(
            ((m = (c = (d = u(o).sys) == null ? void 0 : d.router) == null ? void 0 : c.config) == null ? void 0 : m.loading) || "PageLoadUserTokenOnline"
          ), {
            key: 1,
            ujt: r.ujt
          }, null, 8, ["ujt"]))
        ],
        2
        /* CLASS */
      );
    };
  }
}), Po = /* @__PURE__ */ q(So, [["__scopeId", "data-v-227d0c19"]]), Ao = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Po
}, Symbol.toStringTag, { value: "Module" })), Oo = { class: "as-form-align as-form-line" }, Co = { class: "as-channel-btns" }, Mo = /* @__PURE__ */ L({
  __name: "ChannelAdd",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $db: o } = e.ujt, { addContent: s, initAddChannel: r } = t.useChannel(e);
    return r(), (l, a) => {
      const i = x("AsaiForm");
      return g(), v(
        D,
        null,
        [
          p("div", Oo, [
            B(i, {
              ujt: l.ujt,
              asaidata: u(o)[e.opt.channel].rfdata
            }, null, 8, ["ujt", "asaidata"])
          ]),
          p("div", Co, [
            p(
              "div",
              {
                class: "li cur",
                onPointerdown: a[0] || (a[0] = (f) => u(s)())
              },
              S(u(t).lg(e.opt.channel + ".ui.add")),
              33
              /* TEXT, NEED_HYDRATION */
            )
          ])
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), To = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Mo
}, Symbol.toStringTag, { value: "Module" })), Lo = ["title", "onPointerdown"], zo = /* @__PURE__ */ L({
  __name: "ChannelClass",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o } = e.ujt, { setChannelClass: s } = t.useChannel(e);
    return (r, l) => (g(!0), v(
      D,
      null,
      Q(Object.entries(u(o).lang[e.opt.channel].fl), (a) => H(r.$slots, "default", {
        key: a[0],
        item: a,
        opt: { setChannelClass: u(s) }
      }, () => {
        var i, f;
        return [
          p("div", {
            title: a[1] || "",
            class: Z({
              li: !0,
              cur: a[0] === ((i = u(o).location.query) == null ? void 0 : i.fl) || a[0] === "asai" && !((f = u(o).location.query) != null && f.fl)
            }),
            onPointerdown: (d) => u(s)(a[0] === "asai" ? "" : a[0])
          }, S(a[1]), 43, Lo)
        ];
      })),
      128
      /* KEYED_FRAGMENT */
    ));
  }
}), Uo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: zo
}, Symbol.toStringTag, { value: "Module" })), Eo = { class: "as-form-align as-form-line" }, xo = { class: "as-channel-btns" }, Io = /* @__PURE__ */ L({
  __name: "ChannelEdit",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $db: o } = e.ujt, { editContent: s } = t.useChannel(e);
    return (r, l) => {
      const a = x("AsaiForm");
      return g(), v(
        D,
        null,
        [
          p("div", Eo, [
            B(a, {
              ujt: r.ujt,
              asaidata: u(o)[e.opt.channel].rfdata
            }, null, 8, ["ujt", "asaidata"])
          ]),
          p("div", xo, [
            p(
              "div",
              {
                class: "li cur",
                onPointerdown: l[0] || (l[0] = (i) => u(s)())
              },
              S(u(t).lg(e.opt.channel + ".ui.edit")),
              33
              /* TEXT, NEED_HYDRATION */
            )
          ])
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), Do = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Io
}, Symbol.toStringTag, { value: "Module" })), Fo = {
  key: 0,
  class: "as-channel-area"
}, Ro = { class: "as-channel-class" }, Wo = { class: "as-channel-class-area" }, Bo = { class: "as-channel-list" }, Ho = ["id"], qo = {
  key: 0,
  class: "as-channel-page"
}, Yo = { class: "as-channel-show" }, Xo = { class: "as-channel-float" }, Vo = /* @__PURE__ */ L({
  __name: "ChannelIndex",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o, $db: s } = e.ujt, { initChannel: r } = t.useChannel(e);
    r();
    function l(a) {
      document.querySelectorAll(a).forEach((i) => {
        i.classList.contains("as-channel-nohidden") ? i.classList.remove("as-channel-nohidden") : i.classList.add("as-channel-nohidden"), console.log(i.classList);
      });
    }
    return re(() => {
      s[e.opt.channel] = null;
    }), (a, i) => {
      var k, C;
      const f = x("ChannelClass"), d = x("ChannelListSearch"), c = x("PopBoxConfirm"), m = x("ChannelList"), h = x("ChannelListPage"), _ = x("ChannelEdit"), $ = x("ChannelShow"), y = x("ChannelAdd");
      return u(s)[e.opt.channel].stat ? (g(), v("div", Fo, [
        p("div", Ro, [
          p(
            "h1",
            null,
            "📚 " + S(u(t).lg(e.opt.channel + ".ui.class")),
            1
            /* TEXT */
          ),
          p("div", Wo, [
            B(f, {
              ujt: a.ujt,
              opt: a.opt
            }, null, 8, ["ujt", "opt"])
          ])
        ]),
        p("div", Bo, [
          p(
            "h1",
            null,
            "📃 " + S(u(t).lg(e.opt.channel + ".ui.list")),
            1
            /* TEXT */
          ),
          B(d, {
            ujt: a.ujt,
            opt: a.opt
          }, null, 8, ["ujt", "opt"]),
          p("div", {
            class: "as-channel-list-area as-list-nth",
            id: "popconfirm" + e.opt.channel + "area"
          }, [
            B(c, {
              ujt: a.ujt,
              id: "popconfirm" + e.opt.channel
            }, null, 8, ["ujt", "id"]),
            B(m, {
              ujt: a.ujt,
              opt: a.opt
            }, null, 8, ["ujt", "opt"])
          ], 8, Ho),
          u(s)[e.opt.channel].pagelist.length > 1 ? (g(), v("div", qo, [
            B(h, {
              ujt: a.ujt,
              opt: a.opt
            }, null, 8, ["ujt", "opt"])
          ])) : W("v-if", !0)
        ]),
        p("div", Yo, [
          (k = u(o).location.query) != null && k.show ? (g(), v(
            D,
            { key: 0 },
            [
              (C = u(o).location.query) != null && C.showty ? (g(), v(
                D,
                { key: 0 },
                [
                  p(
                    "h1",
                    null,
                    "📝 " + S(u(t).lg(e.opt.channel + ".ui.edit")),
                    1
                    /* TEXT */
                  ),
                  B(_, {
                    ujt: a.ujt,
                    opt: a.opt
                  }, null, 8, ["ujt", "opt"])
                ],
                64
                /* STABLE_FRAGMENT */
              )) : (g(), v(
                D,
                { key: 1 },
                [
                  p(
                    "h1",
                    null,
                    "📄 " + S(u(t).lg(e.opt.channel + ".ui.show")),
                    1
                    /* TEXT */
                  ),
                  B($, {
                    ujt: a.ujt,
                    opt: a.opt
                  }, null, 8, ["ujt", "opt"])
                ],
                64
                /* STABLE_FRAGMENT */
              ))
            ],
            64
            /* STABLE_FRAGMENT */
          )) : (g(), v(
            D,
            { key: 1 },
            [
              p(
                "h1",
                null,
                "📰 " + S(u(t).lg(e.opt.channel + ".ui.add")),
                1
                /* TEXT */
              ),
              B(y, {
                ujt: a.ujt,
                opt: a.opt
              }, null, 8, ["ujt", "opt"])
            ],
            64
            /* STABLE_FRAGMENT */
          ))
        ]),
        p("div", Xo, [
          p(
            "div",
            {
              class: "as-channel-float-class",
              onPointerdown: i[0] || (i[0] = (O) => l(".as-channel-class"))
            },
            " ☰ " + S(u(t).lg(e.opt.channel + ".ui.class")),
            33
            /* TEXT, NEED_HYDRATION */
          ),
          p(
            "div",
            {
              class: "as-channel-float-list",
              onPointerdown: i[1] || (i[1] = (O) => l(".as-channel-list"))
            },
            " ☰ " + S(u(t).lg(e.opt.channel + ".ui.list")),
            33
            /* TEXT, NEED_HYDRATION */
          )
        ])
      ])) : W("v-if", !0);
    };
  }
}), No = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Vo
}, Symbol.toStringTag, { value: "Module" })), Jo = {
  key: 0,
  class: "as-channel-area"
}, Go = { class: "as-channel-class" }, Ko = { class: "as-channel-class-area" }, Qo = { class: "as-channel-list" }, Zo = ["id"], en = {
  key: 0,
  class: "as-channel-page"
}, tn = { class: "as-channel-show" }, on = /* @__PURE__ */ L({
  __name: "ChannelIndexOne",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o, $db: s } = e.ujt, { initChannel: r } = t.useChannel(e);
    return r(), re(() => {
      s[e.opt.channel] = null;
    }), (l, a) => {
      var y, k;
      const i = x("ChannelClass"), f = x("ChannelListSearch"), d = x("PopBoxConfirm"), c = x("ChannelList"), m = x("ChannelListPage"), h = x("ChannelEdit"), _ = x("ChannelShow"), $ = x("ChannelAdd");
      return u(s)[e.opt.channel].stat ? (g(), v("div", Jo, [
        p("div", Go, [
          p(
            "h1",
            null,
            "📚 " + S(u(t).lg(e.opt.channel + ".ui.class")),
            1
            /* TEXT */
          ),
          p("div", Ko, [
            B(i, {
              ujt: l.ujt,
              opt: l.opt
            }, null, 8, ["ujt", "opt"])
          ])
        ]),
        p("div", Qo, [
          p(
            "h1",
            null,
            "📃 " + S(u(t).lg(e.opt.channel + ".ui.list")),
            1
            /* TEXT */
          ),
          B(f, {
            ujt: l.ujt,
            opt: l.opt
          }, null, 8, ["ujt", "opt"]),
          p("div", {
            class: "as-channel-list-area as-list-nth",
            id: "popconfirm" + e.opt.channel + "area"
          }, [
            B(d, {
              ujt: l.ujt,
              id: "popconfirm" + e.opt.channel
            }, null, 8, ["ujt", "id"]),
            B(c, {
              ujt: l.ujt,
              opt: l.opt
            }, null, 8, ["ujt", "opt"])
          ], 8, Zo),
          u(s)[e.opt.channel].pagelist.length > 1 ? (g(), v("div", en, [
            B(m, {
              ujt: l.ujt,
              opt: l.opt
            }, null, 8, ["ujt", "opt"])
          ])) : W("v-if", !0)
        ]),
        p("div", tn, [
          (y = u(o).location.query) != null && y.show ? (g(), v(
            D,
            { key: 0 },
            [
              (k = u(o).location.query) != null && k.showty ? (g(), v(
                D,
                { key: 0 },
                [
                  p(
                    "h1",
                    null,
                    "📝 " + S(u(t).lg(e.opt.channel + ".ui.edit")),
                    1
                    /* TEXT */
                  ),
                  B(h, {
                    ujt: l.ujt,
                    opt: l.opt
                  }, null, 8, ["ujt", "opt"])
                ],
                64
                /* STABLE_FRAGMENT */
              )) : (g(), v(
                D,
                { key: 1 },
                [
                  p(
                    "h1",
                    null,
                    "📄 " + S(u(t).lg(e.opt.channel + ".ui.show")),
                    1
                    /* TEXT */
                  ),
                  B(_, {
                    ujt: l.ujt,
                    opt: l.opt
                  }, null, 8, ["ujt", "opt"])
                ],
                64
                /* STABLE_FRAGMENT */
              ))
            ],
            64
            /* STABLE_FRAGMENT */
          )) : (g(), v(
            D,
            { key: 1 },
            [
              p(
                "h1",
                null,
                "📰 " + S(u(t).lg(e.opt.channel + ".ui.add")),
                1
                /* TEXT */
              ),
              B($, {
                ujt: l.ujt,
                opt: l.opt
              }, null, 8, ["ujt", "opt"])
            ],
            64
            /* STABLE_FRAGMENT */
          ))
        ])
      ])) : W("v-if", !0);
    };
  }
}), nn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: on
}, Symbol.toStringTag, { value: "Module" })), an = ["title", "onPointerdown"], sn = {
  key: 0,
  class: "btns"
}, ln = ["onPointerdown"], rn = ["onPointerdown"], un = /* @__PURE__ */ L({
  __name: "ChannelList",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $db: o, $global: s } = e.ujt, { delItem: r, editItem: l, readItem: a, setShow: i, fetchContent: f, optConfirm: d } = t.useChannel(e);
    return ce(() => {
      var c;
      f(0), a((c = s.location.query) == null ? void 0 : c.show);
    }), o[e.opt.channel].cmPageSize = G(() => {
      var c;
      return Number(
        s.location.query.ps || ((c = o[e.opt.channel].config) == null ? void 0 : c.ps)
      ) || 5;
    }), (c, m) => (g(!0), v(
      D,
      null,
      Q(u(o)[e.opt.channel].list, (h) => H(c.$slots, "default", {
        key: "list" + ((h == null ? void 0 : h.sn) || ""),
        item: h,
        opt: { setShow: u(i), delItem: u(r), editItem: u(l), optConfirm: u(d) }
      }, () => {
        var _, $, y;
        return [
          p(
            "div",
            {
              class: Z({
                li: !0,
                cur: (h == null ? void 0 : h.sn) && ((_ = u(s).location.query) == null ? void 0 : _.show) === (h == null ? void 0 : h.sn)
              })
            },
            [
              p("div", {
                class: "li",
                title: (h == null ? void 0 : h.tit) || "",
                onPointerdown: (k) => u(i)((h == null ? void 0 : h.sn) || "")
              }, S((h == null ? void 0 : h.tit) || ""), 41, an),
              3 < ((y = ($ = u(s).user) == null ? void 0 : $.info) == null ? void 0 : y.lv) ? (g(), v("div", sn, [
                p("div", {
                  onPointerdown: V((k) => {
                    u(d)({
                      con: u(t).lg(
                        e.opt.channel + ".ui.delconfirm"
                      ) || u(s).lang.asai.delconfirm,
                      fn: () => {
                        u(r)(h == null ? void 0 : h.sn);
                      }
                    });
                  }, ["stop"])
                }, S(u(t).lg(e.opt.channel + ".ui.del")), 41, ln),
                p("div", {
                  onPointerdown: V((k) => u(l)(h.sn), ["stop"])
                }, S(u(t).lg(e.opt.channel + ".ui.edit")), 41, rn)
              ])) : W("v-if", !0)
            ],
            2
            /* CLASS */
          )
        ];
      })),
      128
      /* KEYED_FRAGMENT */
    ));
  }
}), cn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: un
}, Symbol.toStringTag, { value: "Module" })), dn = ["onPointerdown"], pn = /* @__PURE__ */ L({
  __name: "ChannelListPage",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $db: t, $global: o, $fn: s } = e.ujt, { getPageList: r } = s.usePage(e);
    return t[e.opt.channel].pagelist = G(() => {
      var l, a;
      return r((a = t[(l = e.opt) == null ? void 0 : l.channel]) == null ? void 0 : a.cmPageSize);
    }), (l, a) => u(t)[e.opt.channel].pagelist.length > 1 ? (g(!0), v(
      D,
      { key: 0 },
      Q(u(t)[e.opt.channel].pagelist, (i) => H(l.$slots, "default", {
        key: "listpage" + (i || ""),
        item: i,
        opt: {}
      }, () => {
        var f, d;
        return [
          p("div", {
            onPointerdown: (c) => {
              var m;
              return (m = u(t)[e.opt.channel]) == null ? void 0 : m.setpage(i);
            },
            class: Z(
              i == ((f = u(o).location.query) == null ? void 0 : f.pg) || i == 1 && !((d = u(o).location.query) != null && d.pg) ? "as-channel-active" : ""
            )
          }, S(i), 43, dn)
        ];
      }, !0)),
      128
      /* KEYED_FRAGMENT */
    )) : W("v-if", !0);
  }
}), fn = /* @__PURE__ */ q(pn, [["__scopeId", "data-v-96ad2855"]]), mn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: fn
}, Symbol.toStringTag, { value: "Module" })), gn = {
  key: 0,
  class: "as-channel-search"
}, hn = { class: "as-channel-search-main" }, vn = ["placeholder"], _n = { class: "as-channel-search-opt" }, yn = ["value"], bn = ["value"], $n = ["value"], wn = /* @__PURE__ */ L({
  __name: "ChannelListSearch",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $db: t, $global: o, $fn: s } = e.ujt, { searchSubmit: r } = s.useChannel(e);
    return (l, a) => H(l.$slots, "default", {
      item: u(o).location.query,
      opt: { searchSubmit: u(r) }
    }, () => {
      var i, f, d, c, m;
      return [
        (i = e.opt) != null && i.channel && ((d = (f = u(t)[e.opt.channel]) == null ? void 0 : f.sxs) != null && d.length) ? (g(), v("div", gn, [
          p("div", hn, [
            J(p("input", {
              "onUpdate:modelValue": a[0] || (a[0] = (h) => u(o).location.query.ss = h),
              placeholder: u(s).lg("asai.searchtips")
            }, null, 8, vn), [
              [ne, u(o).location.query.ss]
            ]),
            p(
              "button",
              {
                onPointerdown: a[1] || (a[1] = (h) => u(r)())
              },
              S(u(s).lg("asai.search")),
              33
              /* TEXT, NEED_HYDRATION */
            )
          ]),
          p("div", _n, [
            J(p(
              "select",
              {
                "onUpdate:modelValue": a[2] || (a[2] = (h) => u(o).location.query.ssty = h)
              },
              [
                (g(!0), v(
                  D,
                  null,
                  Q(u(t)[e.opt.channel].sss, (h) => {
                    var _, $, y, k;
                    return g(), v("option", {
                      key: h,
                      value: h === "asai" ? void 0 : h
                    }, S(h === "asai" ? ($ = (_ = u(o).lang) == null ? void 0 : _[u(t)[e.opt.channel].sn]) == null ? void 0 : $.sss : (k = (y = u(t)[e.opt.channel].rfdata) == null ? void 0 : y.lang) == null ? void 0 : k[h]), 9, yn);
                  }),
                  128
                  /* KEYED_FRAGMENT */
                ))
              ],
              512
              /* NEED_PATCH */
            ), [
              [ue, u(o).location.query.ssty]
            ]),
            J(p(
              "select",
              {
                "onUpdate:modelValue": a[3] || (a[3] = (h) => u(o).location.query.sx = h)
              },
              [
                (g(!0), v(
                  D,
                  null,
                  Q(u(t)[e.opt.channel].sxs, (h) => {
                    var _, $, y, k;
                    return g(), v("option", {
                      key: h,
                      value: h === "asai" ? void 0 : h
                    }, S(h === "asai" ? ($ = (_ = u(o).lang) == null ? void 0 : _[u(t)[e.opt.channel].sn]) == null ? void 0 : $.sxs : (k = (y = u(t)[e.opt.channel].rfdata) == null ? void 0 : y.lang) == null ? void 0 : k[h]), 9, bn);
                  }),
                  128
                  /* KEYED_FRAGMENT */
                ))
              ],
              512
              /* NEED_PATCH */
            ), [
              [ue, u(o).location.query.sx]
            ]),
            J(p(
              "select",
              {
                "onUpdate:modelValue": a[4] || (a[4] = (h) => u(o).location.query.sxty = h)
              },
              [
                (g(!0), v(
                  D,
                  null,
                  Q((m = (c = u(o).lang) == null ? void 0 : c[u(t)[e.opt.channel].sn]) == null ? void 0 : m.sxtys, (h, _) => (g(), v("option", {
                    key: "sxty" + _,
                    value: _ == 0 ? void 0 : _.toString()
                  }, S(h), 9, $n))),
                  128
                  /* KEYED_FRAGMENT */
                ))
              ],
              512
              /* NEED_PATCH */
            ), [
              [ue, u(o).location.query.sxty]
            ])
          ])
        ])) : W("v-if", !0)
      ];
    }, !0);
  }
}), jn = /* @__PURE__ */ q(wn, [["__scopeId", "data-v-5cb99eca"]]), kn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: jn
}, Symbol.toStringTag, { value: "Module" })), Sn = { class: "as-channel-pos-area" }, Pn = /* @__PURE__ */ L({
  __name: "ChannelPos",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $fn: t } = e.ujt, { setChannelHash: o } = t.useChannel(e);
    return (s, r) => (g(), v("div", Sn, [
      p(
        "div",
        {
          class: "as-channel-pos",
          onPointerdown: r[0] || (r[0] = (l) => u(o)("class"))
        },
        S(u(t).lg(e.opt.channel + ".ui.class")),
        33
        /* TEXT, NEED_HYDRATION */
      ),
      p(
        "div",
        {
          class: "as-channel-pos",
          onPointerdown: r[1] || (r[1] = (l) => u(o)("list"))
        },
        S(u(t).lg(e.opt.channel + ".ui.list")),
        33
        /* TEXT, NEED_HYDRATION */
      ),
      p(
        "div",
        {
          class: "as-channel-pos",
          onPointerdown: r[2] || (r[2] = (l) => u(o)("add"))
        },
        S(u(t).lg(e.opt.channel + ".ui.add")),
        33
        /* TEXT, NEED_HYDRATION */
      )
    ]));
  }
}), An = /* @__PURE__ */ q(Pn, [["__scopeId", "data-v-4473e766"]]), On = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: An
}, Symbol.toStringTag, { value: "Module" })), Cn = { class: "as-form-show" }, Mn = /* @__PURE__ */ L({
  __name: "ChannelShow",
  props: {
    ujt: {},
    opt: {}
  },
  setup(n) {
    const e = n, { $db: t } = e.ujt;
    return (o, s) => {
      const r = x("AsaiForm");
      return g(), v("div", Cn, [
        B(r, {
          ujt: o.ujt,
          asaidata: u(t)[e.opt.channel].rfdata
        }, null, 8, ["ujt", "asaidata"])
      ]);
    };
  }
}), Tn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Mn
}, Symbol.toStringTag, { value: "Module" })), Ln = { class: "as-chat-room" }, zn = { class: "as-chat-header" }, Un = { class: "as-chat-tit" }, En = { class: "as-chat-body" }, xn = { class: "as-chat-con" }, In = { class: "as-chat-footer" }, Dn = { class: "as-chat-footer-main" }, Fn = { class: "as-chat-input" }, Rn = { class: "as-chat-btn" }, Wn = /* @__PURE__ */ L({
  __name: "ChatRoom",
  props: {
    ujt: {},
    room: {}
  },
  setup(n) {
    var l;
    const e = n, { $fn: t } = e.ujt, o = ie({
      list: [],
      send: {
        msg: "1111111111"
      }
    }), s = ((l = e == null ? void 0 : e.room) == null ? void 0 : l.wsname) || "web";
    t.useWs(e.ujt, s), t.ws[s].init().then(() => {
      console.log(666, t.ws[s]), t.ws[s].wsWatch(
        {
          ty: "chat/weblist"
        },
        (a) => {
          console.log(666.001, a), o.list.unshift(...a.db);
        }
      );
    });
    function r() {
      t.ws[s].wsApi({
        ty: "chat/websend",
        db: o.send
      }).then(() => {
      });
    }
    return (a, i) => (g(), v("div", Ln, [
      p("div", zn, [
        H(a.$slots, "chatheader", {}, () => {
          var f;
          return [
            p(
              "div",
              Un,
              S(((f = a.room) == null ? void 0 : f.tit) || "CHAT"),
              1
              /* TEXT */
            )
          ];
        }, !0)
      ]),
      p("div", En, [
        H(a.$slots, "chatbody", {}, () => [
          p("div", xn, [
            (g(!0), v(
              D,
              null,
              Q(o.list, (f) => (g(), v(
                "div",
                null,
                S(f.msg),
                1
                /* TEXT */
              ))),
              256
              /* UNKEYED_FRAGMENT */
            ))
          ])
        ], !0)
      ]),
      p("div", In, [
        H(a.$slots, "chatfooter", {}, () => [
          p("div", Dn, [
            i[2] || (i[2] = p(
              "div",
              { class: "as-chat-opt" },
              "标签",
              -1
              /* CACHED */
            )),
            p("div", Fn, [
              J(p(
                "input",
                {
                  type: "text",
                  "onUpdate:modelValue": i[0] || (i[0] = (f) => o.send.msg = f),
                  placeholder: "请输入内容"
                },
                null,
                512
                /* NEED_PATCH */
              ), [
                [ne, o.send.msg]
              ])
            ]),
            p("div", Rn, [
              p(
                "button",
                {
                  onPointerdown: i[1] || (i[1] = (f) => r())
                },
                "发送",
                32
                /* NEED_HYDRATION */
              )
            ])
          ])
        ], !0)
      ])
    ]));
  }
}), Bn = /* @__PURE__ */ q(Wn, [["__scopeId", "data-v-e8691e61"]]), Hn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Bn
}, Symbol.toStringTag, { value: "Module" })), qn = { class: "keyboard-area" }, Yn = ["data-key"], Xn = {
  key: 1,
  class: "keyboard-key key-bg"
}, Vn = ["data-key"], Nn = /* @__PURE__ */ L({
  __name: "AsKeyBoard",
  props: {
    ujt: {}
  },
  setup(n) {
    fe(($) => ({
      "9a79df84": l.ge,
      "9a79df68": l.gs
    }));
    const e = n, { $dbwork: t, $model: o, $fn: s, $global: r } = e.ujt, l = ie({
      bd: {
        Shift: !1,
        Ctrl: !1,
        Type: "Font",
        pos: 0
      },
      ge: "8px",
      gs: "5px",
      map: {
        Font: [
          [
            ["1", 10],
            ["2", 10],
            ["3", 10],
            ["4", 10],
            ["5", 10],
            ["6", 10],
            ["7", 10],
            ["8", 10],
            ["9", 10],
            ["0", 10]
          ],
          [
            ["q", 10],
            ["w", 10],
            ["e", 10],
            ["r", 10],
            ["t", 10],
            ["y", 10],
            ["u", 10],
            ["i", 10],
            ["o", 10],
            ["p", 10]
          ],
          [
            ["a", 10],
            ["s", 10],
            ["d", 10],
            ["f", 10],
            ["g", 10],
            ["h", 10],
            ["j", 10],
            ["k", 10],
            ["l", 10],
            ["Backspace", 10, "⌫", 1]
          ],
          [
            ["z", 10],
            ["x", 10],
            ["c", 10],
            ["v", 10],
            ["b", 10],
            ["n", 10],
            ["m", 10],
            ["-", 10],
            [".", 10],
            ["Enter", 10, "↵", 1]
          ],
          [
            ["Shift", 10, "", 1, "Shift"],
            ["Ctrl", 10, "", 1, "Ctrl"],
            [" ", 50, "Space", 1],
            ["Char", 10, "", 1, "", "Type"],
            ["Hide", 10, "", 1],
            ["Drag", 10, "☩", 1]
          ]
        ],
        Char: [
          [
            ["!", 10],
            ["@", 10],
            ["#", 10],
            ["$", 10],
            ["%", 10],
            ["^", 10],
            ["&", 10],
            ["*", 10],
            ["(", 10],
            [")", 10]
          ],
          [
            ["{", 10],
            ["}", 10],
            ["[", 10],
            ["]", 10],
            ["<", 10],
            [">", 10],
            ["|", 10],
            ["\\", 10],
            ["/", 10],
            ["=", 10]
          ],
          [
            [":", 10],
            [";", 10],
            [",", 10],
            ["'", 10],
            ['"', 10],
            ["`", 10],
            ["~", 10],
            ["+", 10],
            ["_", 10],
            ["Backspace", 10, "⌫", 1]
          ],
          [
            ["{}", 10],
            ["()", 10],
            ["[]", 10],
            ["<>", 10],
            [">=", 10],
            ["<=", 10],
            ["?", 10],
            ["-", 10],
            [".", 10],
            ["Enter", 10, "↵", 1]
          ],
          [
            ["Shift", 10, "", 1, "Shift"],
            ["Ctrl", 10, "", 1, "Ctrl"],
            [" ", 50, "Space", 1],
            ["Char", 10, "", 1, "", "Type"],
            ["Hide", 10, "", 1],
            ["Drag", 10, "☩", 1]
          ]
        ]
      }
    });
    Oe(
      () => r.keyboard.isshow,
      ($, y) => {
        $ && $ !== y && i();
      }
    );
    const a = () => {
      var $;
      ($ = r.keyboard.params) != null && $.el && (l.bd.pos = r.keyboard.params.el.selectionStart || 0);
    }, i = () => {
      de(() => {
        setTimeout(() => {
          a();
        }, 10);
      });
    }, f = () => {
      var $, y;
      (y = ($ = r.keyboard.params) == null ? void 0 : $.ot) == null || y.fndscb(), r.keyboard.isshow = 0, r.keyboard.params = null;
    }, d = () => {
      const $ = Object.keys(l.map);
      l.bd.Type = l.bd.Type === $[0] ? $[1] : $[0];
    }, c = ($, y, k, C = null, O = null) => {
      var A, z, E, I, T, w, M, P, b;
      if (r.keyboard.params.type === "monaco") {
        if ((A = r.keyboard.opt) != null && A.backText && C === 0) {
          (z = r.keyboard.opt) == null || z.backText();
          return;
        } else if ((E = r.keyboard.opt) != null && E.insertText && C != null) {
          if ((I = r.keyboard.opt) != null && I.backText) {
            const {
              endColumn: j,
              endLineNumber: U,
              startColumn: F,
              startLineNumber: R
            } = o.lua.editor.getSelection();
            (j !== F || U !== R) && ((T = r.keyboard.opt) == null || T.backText());
          }
          (w = r.keyboard.opt) == null || w.insertText(C, O);
          return;
        }
      }
      $.value = y, l.bd.pos = k, $.dispatchEvent(new Event("input", { bubbles: !0 }));
      try {
        $.focus(), $.setSelectionRange(k, k);
      } catch {
        (b = (P = (M = r.keyboard.params) == null ? void 0 : M.ot) == null ? void 0 : P.fnnumcb) == null || b.call(P);
      }
    }, m = ($, y, k, C, O, A = null, z = 0) => {
      A = A || (l.bd.Shift ? $.toUpperCase() : $);
      const E = k.slice(0, C) + A + k.slice(O);
      return c(y, E, C + A.length, A, z), y.focus(), E;
    }, h = async ($) => {
      var A, z, E, I, T, w, M, P, b, j;
      const y = (A = r.keyboard.params) == null ? void 0 : A.el;
      if (!y)
        return;
      const k = y.value;
      let C, O;
      switch (C = y.selectionStart, O = y.selectionEnd, C == null && (C = k.length, O = k.length), $) {
        case "Backspace":
          const U = C === O ? C - 1 : C, F = k.slice(0, U) + k.slice(O);
          c(y, F, U, 0);
          break;
        case "Enter":
          m($, y, k, C, O, `
`);
          break;
        case "Shift":
          l.bd.Shift = !l.bd.Shift;
          break;
        case "Ctrl":
          l.bd.Ctrl = !l.bd.Ctrl;
          break;
        case "Char":
          d();
          break;
        case "Hide":
          f();
          break;
        case "Drag":
          break;
        case " ":
          l.bd.Ctrl ? (r.keyboard.areastyle = {}, l.bd.Shift = !1, l.bd.Ctrl = !1) : m($, y, k, C, O);
          break;
        case "x":
          if (l.bd.Ctrl)
            try {
              if (r.keyboard.params.type === "monaco" && ((z = r.keyboard.opt) != null && z.copyText) && ((E = r.keyboard.opt) != null && E.backText)) {
                (I = r.keyboard.opt) == null || I.copyText(), (T = r.keyboard.opt) == null || T.backText();
                return;
              }
              await s.As.copyToClipboard(k.slice(C, O));
            } catch (R) {
              console.error("copy fail: ", R);
            }
          else
            m($, y, k, C, O);
          break;
        case "c":
          if (l.bd.Ctrl)
            try {
              if (r.keyboard.params.type === "monaco" && ((w = r.keyboard.opt) != null && w.copyText)) {
                (M = r.keyboard.opt) == null || M.copyText();
                return;
              }
              await s.As.copyToClipboard(k.slice(C, O));
            } catch (R) {
              console.error("copy fail: ", R);
            }
          else
            m($, y, k, C, O);
          break;
        case "v":
          if (l.bd.Ctrl)
            try {
              if (r.keyboard.params.type === "monaco" && ((P = r.keyboard.opt) != null && P.pasteText)) {
                (b = r.keyboard.opt) == null || b.pasteText();
                return;
              }
              const R = await s.As.readFromClipboard();
              m(
                $,
                y,
                k,
                C,
                O,
                R
              );
            } catch (R) {
              console.error("paste fail: ", R);
            }
          else
            m($, y, k, C, O);
          break;
        default:
          if (r.keyboard.params.ot.isnumber && !/[0-9.-]/.test($))
            return;
          m(
            $,
            y,
            k,
            C,
            O,
            null,
            r.keyboard.params.type === "monaco" && ((j = r.keyboard.opt) != null && j.pasteText) ? 1 : 0
          );
          break;
      }
    }, _ = ($) => {
      const y = $.target;
      if (!y.classList.contains("keyboard-key")) return;
      const k = y.dataset.key;
      if (k)
        switch ($.preventDefault(), $.stopPropagation(), $.type) {
          case "pointerdown":
            h(k);
            break;
        }
    };
    return ($, y) => {
      const k = pe("dragzoom");
      return g(), v(
        "div",
        {
          class: "keyboard-container",
          id: "keyboardarea",
          onPointerdown: _,
          onPointerup: _,
          onPointercancel: _
        },
        [
          p("div", qn, [
            (g(!0), v(
              D,
              null,
              Q(l.map[l.bd.Type], (C, O) => (g(), v("div", {
                class: "keyboard-row",
                key: "row" + O
              }, [
                (g(!0), v(
                  D,
                  null,
                  Q(C, (A) => (g(), v(
                    "div",
                    {
                      class: "keyboard-item",
                      key: A[0],
                      style: K({ width: `${A[1]}%` })
                    },
                    [
                      A[4] ? (g(), v("button", {
                        key: 0,
                        class: Z(`keyboard-key${A[3] ? " key-bg" : ""}${l.bd[A[4]] ? " active" : ""}`),
                        "data-key": A[0]
                      }, S(A[5] ? l.bd[A[5]] : A[2] || A[0]), 11, Yn)) : A[0] === "Drag" ? J((g(), v("button", Xn, [
                        te(
                          S(A[2] || A[0]),
                          1
                          /* TEXT */
                        )
                      ])), [
                        [k, {
                          ujt: $.ujt,
                          pos: u(r).keyboard.areastyle,
                          domarea: "askeyboardarea",
                          dommask: "askeyboardmask"
                        }]
                      ]) : (g(), v("button", {
                        key: 2,
                        class: Z(`keyboard-key${A[3] ? " key-bg" : ""}`),
                        "data-key": A[0]
                      }, S(A[5] ? l.bd[A[5]] : A[2] || (l.bd.Shift ? A[0].toUpperCase() : A[0])), 11, Vn))
                    ],
                    4
                    /* STYLE */
                  ))),
                  128
                  /* KEYED_FRAGMENT */
                ))
              ]))),
              128
              /* KEYED_FRAGMENT */
            ))
          ])
        ],
        32
        /* NEED_HYDRATION */
      );
    };
  }
}), Jn = /* @__PURE__ */ q(Nn, [["__scopeId", "data-v-73ac8632"]]), Gn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Jn
}, Symbol.toStringTag, { value: "Module" })), Kn = /* @__PURE__ */ L({
  __name: "AsKeyBoardAuto",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt, o = G(() => {
      var r, l, a, i, f, d, c, m, h;
      const s = {
        minHeight: ((l = (r = t.keyboard.params) == null ? void 0 : r.pos) == null ? void 0 : l.minHeight) || 200,
        minWidth: ((i = (a = t.keyboard.params) == null ? void 0 : a.pos) == null ? void 0 : i.minWidth) || 400,
        height: ((d = (f = t.keyboard.params) == null ? void 0 : f.pos) == null ? void 0 : d.height) || 200,
        width: ((m = (c = t.keyboard.params) == null ? void 0 : c.pos) == null ? void 0 : m.width) || 500
      };
      if ((h = t.keyboard.params) != null && h.pos) {
        t.keyboard.params.pos.x * 2 > t.keyboard.params.pos.w ? s.right = t.keyboard.params.pos.w - t.keyboard.params.pos.x : s.left = t.keyboard.params.pos.x, t.keyboard.params.pos.y * 2 > t.keyboard.params.pos.h ? s.bottom = t.keyboard.params.pos.h - t.keyboard.params.pos.y + 28 : s.top = t.keyboard.params.pos.y + 28;
        let _ = t.keyboard.params.pos.w - (s.right || s.left);
        _ < s.width && (s.width = _), _ = t.keyboard.params.pos.h - (s.top || s.bottom), _ < s.height && (s.height = _), s.top && (s.top += "px"), s.bottom && (s.bottom += "px"), s.left && (s.left += "px"), s.right && (s.right += "px"), s.height += "px", s.width += "px";
      }
      return s;
    });
    return (s, r) => {
      const l = x("AsKeyBoard");
      return g(), X(l, {
        style: K(o.value),
        ujt: s.ujt
      }, null, 8, ["style", "ujt"]);
    };
  }
}), Qn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Kn
}, Symbol.toStringTag, { value: "Module" })), Zn = /* @__PURE__ */ L({
  __name: "AsKeyBoardBottom",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $dbwork: t, $global: o } = e.ujt, s = G(() => {
      var l, a, i;
      if ((i = (a = (l = o.keyboard.params) == null ? void 0 : l.ot) == null ? void 0 : a.style) != null && i.area)
        return o.keyboard.params.ot.style.area;
      {
        const f = {
          width: o.sys.zoomwidth || 1920,
          height: o.sys.zoomheight || 1080
        };
        return f.width += "px", f.height += "px", f;
      }
    }), r = G(() => {
      var l, a, i, f, d, c, m;
      if ((i = (a = (l = o.keyboard.params) == null ? void 0 : l.ot) == null ? void 0 : a.style) != null && i.main)
        return o.keyboard.params.ot.style.main;
      {
        const h = {
          maxWidth: o.sys.zoomwidth || 1920,
          maxHeight: o.sys.zoomheight || 1080
        };
        return ((f = o.keyboard.areastyle) == null ? void 0 : f.w) == null && (o.keyboard.areastyle.w = 1e3), ((d = o.keyboard.areastyle) == null ? void 0 : d.h) == null && (o.keyboard.areastyle.h = 388), ((c = o.keyboard.areastyle) == null ? void 0 : c.x) == null && (o.keyboard.areastyle.x = (h.maxWidth - o.keyboard.areastyle.w) / 2), ((m = o.keyboard.areastyle) == null ? void 0 : m.y) == null && (o.keyboard.areastyle.y = h.maxHeight - o.keyboard.areastyle.h - 112), h.maxWidth += "px", h.maxHeight += "px", h.transform = `translate(${o.keyboard.areastyle.x}px, ${o.keyboard.areastyle.y}px)`, h.width = o.keyboard.areastyle.w + "px", h.height = o.keyboard.areastyle.h + "px", h;
      }
    });
    return (l, a) => {
      const i = x("AsKeyBoard"), f = pe("popresizezoom");
      return g(), v(
        "div",
        {
          style: K(s.value),
          id: "askeyboardmask"
        },
        [
          J((g(), v(
            "div",
            {
              id: "askeyboardarea",
              style: K(r.value)
            },
            [
              B(i, { ujt: l.ujt }, null, 8, ["ujt"])
            ],
            4
            /* STYLE */
          )), [
            [f, { ujt: l.ujt, size: u(o).keyboard.areastyle }]
          ])
        ],
        4
        /* STYLE */
      );
    };
  }
}), ea = /* @__PURE__ */ q(Zn, [["__scopeId", "data-v-7fce329b"]]), ta = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ea
}, Symbol.toStringTag, { value: "Module" })), oa = {
  key: 0,
  class: "as-link-area"
}, na = { class: "as-link" }, aa = { class: "as-link-type-tit" }, sa = {
  key: 0,
  class: "as-link-li"
}, la = { class: "as-link-li-tit" }, ia = { class: "as-link-li-input" }, ra = ["onUpdate:modelValue"], ua = {
  key: 0,
  class: "as-link-li-stat"
}, ca = { class: "as-link-btns" }, da = /* @__PURE__ */ L({
  __name: "AsLink",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t, $fn: o, $ws: s } = e.ujt, r = ie({
      link: null
    });
    function l() {
      r.link = JSON.parse(JSON.stringify(t.link));
    }
    function a() {
      o.saveLink(r.link);
    }
    function i() {
      o.startLink().then((f) => {
        l();
      });
    }
    return ce(() => {
      l();
    }), (f, d) => r.link ? (g(), v("div", oa, [
      p("div", na, [
        (g(!0), v(
          D,
          null,
          Q(r.link, (c, m) => (g(), v("div", {
            class: "as-link-type",
            key: "type" + m
          }, [
            p(
              "div",
              aa,
              S(u(t).lang.sys.link.class[m]),
              1
              /* TEXT */
            ),
            (g(!0), v(
              D,
              null,
              Q(c, (h, _) => {
                var $, y;
                return g(), v(
                  D,
                  {
                    key: "key" + _
                  },
                  [
                    h != null && h.close ? W("v-if", !0) : (g(), v("div", sa, [
                      p(
                        "div",
                        la,
                        S(u(t).lang.sys.link[_]) + "： ",
                        1
                        /* TEXT */
                      ),
                      p("div", ia, [
                        J(p("input", {
                          type: "text",
                          "onUpdate:modelValue": (k) => h.url = k
                        }, null, 8, ra), [
                          [ne, h.url]
                        ])
                      ]),
                      m == "ws" ? (g(), v(
                        "div",
                        ua,
                        S((y = ($ = u(s)) == null ? void 0 : $[_]) != null && y.open ? "☑" : "☒"),
                        1
                        /* TEXT */
                      )) : W("v-if", !0)
                    ]))
                  ],
                  64
                  /* STABLE_FRAGMENT */
                );
              }),
              128
              /* KEYED_FRAGMENT */
            ))
          ]))),
          128
          /* KEYED_FRAGMENT */
        ))
      ]),
      p("div", ca, [
        p(
          "div",
          {
            class: "btn",
            onPointerdown: d[0] || (d[0] = (c) => a())
          },
          "确认修改",
          32
          /* NEED_HYDRATION */
        ),
        p(
          "div",
          {
            class: "btn",
            onPointerdown: d[1] || (d[1] = (c) => i())
          },
          "恢复默认",
          32
          /* NEED_HYDRATION */
        ),
        p(
          "div",
          {
            class: "btn",
            onPointerdown: d[2] || (d[2] = (c) => l())
          },
          "取消修改",
          32
          /* NEED_HYDRATION */
        )
      ])
    ])) : W("v-if", !0);
  }
}), pa = /* @__PURE__ */ q(da, [["__scopeId", "data-v-aed5f995"]]), fa = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: pa
}, Symbol.toStringTag, { value: "Module" })), ma = {
  key: 0,
  class: "as-pagebusy-area touch-none"
}, ga = { class: "as-pagebusy-v" }, ha = /* @__PURE__ */ L({
  __name: "AsPageBusy",
  props: {
    ujt: {}
  },
  setup(n) {
    fe((s) => ({
      de8cc8dc: o.value
    }));
    const e = n, { $global: t } = e.ujt, o = G(() => {
      var s;
      return ((s = t.pagebusy) == null ? void 0 : s.zindex) || 9999;
    });
    return (s, r) => {
      var a, i;
      const l = pe("dbpointerdown");
      return u(t).pagebusy ? J((g(), v("div", ma, [
        p(
          "div",
          {
            class: "as-pagebusy-spin",
            style: K({
              width: "68px",
              height: "68px",
              ...((a = u(t).pagebusy) == null ? void 0 : a.style) || {}
            })
          },
          null,
          4
          /* STYLE */
        ),
        p(
          "div",
          ga,
          S((i = u(t).pagebusy) == null ? void 0 : i.v),
          1
          /* TEXT */
        )
      ])), [
        [
          l,
          () => {
            var f;
            (f = u(t).pagebusy) != null && f.keep || (u(t).pagebusy = null);
          }
        ]
      ]) : W("v-if", !0);
    };
  }
}), va = /* @__PURE__ */ q(ha, [["__scopeId", "data-v-93c045e7"]]), _a = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: va
}, Symbol.toStringTag, { value: "Module" })), ya = { class: "as-icon" }, ba = {
  key: 0,
  class: "as-icon-filter"
}, $a = ["src"], wa = /* @__PURE__ */ L({
  __name: "AsSvg",
  props: {
    src: {
      type: String,
      default: ""
    },
    height: {
      type: String,
      default: "24px"
    },
    width: {
      type: String,
      default: ""
    },
    color: {
      type: String,
      default: "var(--cm8)"
    },
    showtype: {
      type: String,
      default: "mask"
    },
    webty: {
      type: String,
      default: ""
    }
  },
  setup(n) {
    const e = n;
    let t = N("");
    const o = G(() => t.value ? "./assets/" + (e.webty ?? +e.webty + "/") + "svg/" + t.value + ".svg" : e.src.startsWith("http") || e.src.endsWith(".svg") || e.src.endsWith(".png") ? e.src : "./assets/" + (e.webty ?? +e.webty + "/") + "svg/" + e.src + ".svg");
    function s() {
      t.value = "default";
    }
    function r() {
      return {
        width: `${e.width ? e.width : e.height}`,
        height: `${e.height ? e.height : e.width}`,
        "background-color": `${e.color}`,
        "mask-image": `url('${o.value}')`,
        "-webkit-mask-image": `url('${o.value}')`
      };
    }
    function l() {
      return e.width ? {
        transform: "translateX(-100%)",
        filter: `drop-shadow(${e.width} 0 ${e.color})`,
        width: `${e.width}`
      } : {
        transform: "translateY(-100%)",
        filter: `drop-shadow(0 ${e.height} ${e.color})`,
        height: `${e.height}`
      };
    }
    return (a, i) => (g(), v("i", ya, [
      n.showtype === "filter" ? (g(), v("i", ba, [
        p("img", {
          style: K(l()),
          src: o.value,
          onError: i[0] || (i[0] = (f) => s())
        }, null, 44, $a)
      ])) : (g(), v(
        "i",
        {
          key: 1,
          class: "as-icon-mask",
          style: K(r())
        },
        null,
        4
        /* STYLE */
      ))
    ]));
  }
}), ja = /* @__PURE__ */ q(wa, [["__scopeId", "data-v-49434e04"]]), ka = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ja
}, Symbol.toStringTag, { value: "Module" })), Sa = ["accept"], Pa = /* @__PURE__ */ L({
  __name: "AsUploadFile",
  props: {
    ujt: {},
    opt: {}
  },
  emits: ["onUpload"],
  setup(n, { emit: e }) {
    const t = n, { $fn: o } = t.ujt, s = e;
    function r(i) {
      const f = i.target.files[0];
      o.As.readFile(f).then((d) => {
        o.api.webserver.apiPost(
          `/api/asaifile/manage/upbase64/?path=${t.opt.path}`,
          d
        ).then((c) => {
          s("onUpload", c == null ? void 0 : c.data), l.value.value = "";
        });
      });
    }
    const l = N(null);
    function a() {
      l.value.click();
    }
    return (i, f) => {
      var d;
      return g(), v(
        "div",
        {
          class: "as-upload-file",
          onPointerdown: f[0] || (f[0] = (c) => a())
        },
        [
          p("input", {
            hidden: "",
            ref_key: "rfUploadDom",
            ref: l,
            type: "file",
            accept: ((d = i.opt) == null ? void 0 : d.accespt) || ".zip",
            onChange: r
          }, null, 40, Sa),
          H(i.$slots, "default", {}, () => [
            te(
              S(u(o).lg("asai.upload")),
              1
              /* TEXT */
            )
          ], !0)
        ],
        32
        /* NEED_HYDRATION */
      );
    };
  }
}), Aa = /* @__PURE__ */ q(Pa, [["__scopeId", "data-v-7bd332fb"]]), Oa = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Aa
}, Symbol.toStringTag, { value: "Module" })), Ca = ["accept"], Ma = /* @__PURE__ */ L({
  __name: "AsUploadTxt",
  props: {
    ujt: {},
    opt: {}
  },
  emits: ["onUpload"],
  setup(n, { emit: e }) {
    const t = n, { $fn: o } = t.ujt, s = e;
    function r(i) {
      const f = i.target.files[0];
      if (f) {
        const d = new FileReader();
        d.onload = (c) => {
          var h;
          const m = (h = c.target) == null ? void 0 : h.result;
          s("onUpload", m), l.value.value = "";
        }, d.readAsText(f);
      }
    }
    const l = N(null);
    function a() {
      l.value.click();
    }
    return (i, f) => {
      var d;
      return g(), v(
        "div",
        {
          class: "as-upload-txt",
          onPointerdown: f[0] || (f[0] = (c) => a())
        },
        [
          p("input", {
            hidden: "",
            ref_key: "rfUploadDom",
            ref: l,
            type: "file",
            accept: ((d = i.opt) == null ? void 0 : d.accespt) || ".json",
            onChange: r
          }, null, 40, Ca),
          H(i.$slots, "default", {}, () => [
            te(
              S(u(o).lg("asai.upload")),
              1
              /* TEXT */
            )
          ], !0)
        ],
        32
        /* NEED_HYDRATION */
      );
    };
  }
}), Ta = /* @__PURE__ */ q(Ma, [["__scopeId", "data-v-e74d1db2"]]), La = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ta
}, Symbol.toStringTag, { value: "Module" })), za = /* @__PURE__ */ L({
  __name: "ChangeLang",
  props: {
    ujt: {},
    fn: {}
  },
  setup(n) {
    const e = n, { $fn: t } = e.ujt;
    return (o, s) => (g(), v(
      "div",
      {
        class: "as-lang",
        onPointerdown: s[0] || (s[0] = (r) => o.fn ? o.fn() : u(t).changelang("auto"))
      },
      [
        H(o.$slots, "default", {}, () => [
          te(
            S(u(t).lg("asai.langs.default")),
            1
            /* TEXT */
          )
        ], !0)
      ],
      32
      /* NEED_HYDRATION */
    ));
  }
}), Ua = /* @__PURE__ */ q(za, [["__scopeId", "data-v-b884b1d2"]]), Ea = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ua
}, Symbol.toStringTag, { value: "Module" })), xa = /* @__PURE__ */ L({
  __name: "ChangeTheme",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o } = e.ujt;
    return (s, r) => (g(), v(
      "div",
      {
        class: "as-theme",
        onPointerdown: r[0] || (r[0] = (l) => u(t).changetheme("auto"))
      },
      [
        H(s.$slots, "default", {}, () => {
          var l;
          return [
            te(
              S(u(t).lg(
                "asai.theme" + ((l = u(o).config.theme) != null && l.includes("dark") ? "light" : "dark")
              )),
              1
              /* TEXT */
            )
          ];
        }, !0)
      ],
      32
      /* NEED_HYDRATION */
    ));
  }
}), Ia = /* @__PURE__ */ q(xa, [["__scopeId", "data-v-a8dbd04c"]]), Da = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ia
}, Symbol.toStringTag, { value: "Module" })), Fa = { class: "container" }, Ra = {
  key: 0,
  class: "preview-wrapper"
}, Wa = ["src"], Ba = { class: "controls" }, Ha = {
  key: 0,
  class: "result-preview"
}, qa = ["src"], Ya = /* @__PURE__ */ L({
  __name: "ImgUploadCut",
  props: {
    ujt: {},
    modelValue: {}
  },
  emits: ["update:modelValue"],
  setup(n, { emit: e }) {
    const t = n, { $fn: o, $model: s } = t.ujt, r = e, l = G({
      get() {
        return t.modelValue;
      },
      set(T) {
        r("update:modelValue", T);
      }
    }), a = N(""), i = N(""), f = N(null), d = N(null), c = N({
      x: 0,
      y: 0,
      width: 0,
      height: 0,
      maxWidth: 0,
      maxHeight: 0
    }), m = N({
      type: null,
      startX: 0,
      startY: 0,
      originalX: 0,
      originalY: 0,
      originalWidth: 0,
      originalHeight: 0,
      direction: null
    }), h = G(() => ({
      transform: `translate(${c.value.x}px, ${c.value.y}px)`,
      width: `${c.value.width}px`,
      height: `${c.value.height}px`
    })), _ = G(
      () => c.value.width > 0 && c.value.height > 0
    ), $ = (T) => {
      const w = T.target.files[0];
      if (!w) return;
      const M = new FileReader();
      M.onload = (P) => {
        a.value = P.target.result, i.value = "";
      }, M.readAsDataURL(w);
    }, y = () => {
      const T = f.value, w = d.value;
      if (!T || !w)
        return;
      const M = Math.min(w.clientWidth, T.naturalWidth), P = Math.min(w.clientHeight, T.naturalHeight), b = Math.min(M * 0.8, T.naturalWidth), j = Math.min(P * 0.8, T.naturalHeight);
      c.value = {
        x: (M - b) / 2,
        y: (P - j) / 2,
        width: b,
        height: j,
        maxWidth: M,
        maxHeight: P
      };
    }, k = (T, w = null) => {
      const M = window.event || M, P = M.touches ? M.touches[0] : M;
      m.value = {
        type: T,
        startX: P.clientX,
        startY: P.clientY,
        originalX: c.value.x,
        originalY: c.value.y,
        originalWidth: c.value.width,
        originalHeight: c.value.height,
        direction: w
      };
      const b = (j) => {
        requestAnimationFrame(() => {
          T === "move" ? C(j) : O(j);
        });
      };
      window.addEventListener("mousemove", b), window.addEventListener("touchmove", b), window.addEventListener("mouseup", A), window.addEventListener("touchend", A);
    }, C = (T) => {
      const w = window.event || T, M = w.touches ? w.touches[0] : w;
      if (m.value.type !== "move") return;
      const P = M.clientX - m.value.startX, b = M.clientY - m.value.startY, j = Math.max(
        0,
        Math.min(
          m.value.originalX + P,
          c.value.maxWidth - c.value.width
        )
      ), U = Math.max(
        0,
        Math.min(
          m.value.originalY + b,
          c.value.maxHeight - c.value.height
        )
      );
      Object.assign(c.value, { x: j, y: U });
    }, O = (T) => {
      const w = window.event || T, M = w.touches ? w.touches[0] : w;
      if (m.value.type !== "resize") return;
      const P = M.clientX - m.value.startX, b = M.clientY - m.value.startY, j = m.value.direction;
      let U = m.value.originalWidth, F = m.value.originalHeight, R = m.value.originalX, Y = m.value.originalY;
      switch (j) {
        case "tr":
          U = Math.max(
            100,
            Math.min(
              m.value.originalWidth + P,
              c.value.maxWidth - R
            )
          ), F = Math.max(100, m.value.originalHeight - b), Y = Math.max(0, m.value.originalY + b);
          break;
        case "tl":
          U = Math.max(100, m.value.originalWidth - P), F = Math.max(100, m.value.originalHeight - b), R = Math.max(0, m.value.originalX + P), Y = Math.max(0, m.value.originalY + b);
          break;
        case "br":
          U = Math.max(100, m.value.originalWidth + P), F = Math.max(100, m.value.originalHeight + b);
          break;
        case "bl":
          U = Math.max(100, m.value.originalWidth - P), F = Math.max(100, m.value.originalHeight + b), R = Math.max(0, m.value.originalX + P);
          break;
      }
      U = Math.min(U, c.value.maxWidth - R), F = Math.min(F, c.value.maxHeight - Y), Object.assign(c.value, {
        x: R,
        y: Y,
        width: U,
        height: F
      });
    }, A = () => {
      m.value.type = null, window.removeEventListener("mousemove", C), window.removeEventListener("touchmove", C), window.removeEventListener("mousemove", O), window.removeEventListener("touchmove", O), window.removeEventListener("mouseup", A), window.removeEventListener("touchend", A);
    }, z = () => {
      const T = f.value, w = T.naturalWidth / T.width, M = T.naturalHeight / T.height, P = Math.min(
        c.value.width * w,
        T.naturalWidth
      ), b = Math.min(
        c.value.height * M,
        T.naturalHeight
      ), j = document.createElement("canvas");
      j.width = P, j.height = b, j.getContext("2d").drawImage(
        T,
        c.value.x * w,
        c.value.y * M,
        P,
        b,
        0,
        0,
        P,
        b
      ), i.value = j.toDataURL("image/png", 0.9);
    }, E = () => {
      const T = document.createElement("a");
      T.download = "cropped-image.png", T.href = i.value, T.click();
    }, I = () => {
      const T = i.value.split(",")[1], w = o.As.Uuid();
      o.api.webserver.apiPost(
        "/api/asaifile/manage/upbase64/?path=" + s.data.sys.settingsys.path.updir + w + ".png",
        T
      ).then((M) => {
        l.value = M.data;
      });
    };
    return (T, w) => (g(), v("div", Fa, [
      p(
        "input",
        {
          type: "file",
          accept: "image/*",
          onChange: $
        },
        null,
        32
        /* NEED_HYDRATION */
      ),
      a.value ? (g(), v("div", Ra, [
        p(
          "div",
          {
            class: "preview-container",
            ref_key: "previewContainer",
            ref: d
          },
          [
            p("img", {
              ref_key: "previewImage",
              ref: f,
              src: a.value,
              onLoad: y
            }, null, 40, Wa),
            J(p(
              "div",
              {
                class: "crop-box",
                style: K(h.value),
                onMousedown: w[8] || (w[8] = V((M) => k("move"), ["prevent"])),
                onTouchstart: w[9] || (w[9] = V((M) => k("move"), ["prevent"]))
              },
              [
                p(
                  "div",
                  {
                    class: "crop-handle top-left",
                    onMousedown: w[0] || (w[0] = V((M) => k("resize", "tl"), ["stop"])),
                    onTouchstart: w[1] || (w[1] = V((M) => k("resize", "tl"), ["stop"]))
                  },
                  null,
                  32
                  /* NEED_HYDRATION */
                ),
                p(
                  "div",
                  {
                    class: "crop-handle top-right",
                    onMousedown: w[2] || (w[2] = V((M) => k("resize", "tr"), ["stop"])),
                    onTouchstart: w[3] || (w[3] = V((M) => k("resize", "tr"), ["stop"]))
                  },
                  null,
                  32
                  /* NEED_HYDRATION */
                ),
                p(
                  "div",
                  {
                    class: "crop-handle bottom-left",
                    onMousedown: w[4] || (w[4] = V((M) => k("resize", "bl"), ["stop"])),
                    onTouchstart: w[5] || (w[5] = V((M) => k("resize", "bl"), ["stop"]))
                  },
                  null,
                  32
                  /* NEED_HYDRATION */
                ),
                p(
                  "div",
                  {
                    class: "crop-handle bottom-right",
                    onMousedown: w[6] || (w[6] = V((M) => k("resize", "br"), ["stop"])),
                    onTouchstart: w[7] || (w[7] = V((M) => k("resize", "br"), ["stop"]))
                  },
                  null,
                  32
                  /* NEED_HYDRATION */
                )
              ],
              36
              /* STYLE, NEED_HYDRATION */
            ), [
              [Ce, _.value]
            ])
          ],
          512
          /* NEED_PATCH */
        ),
        p("div", Ba, [
          p(
            "button",
            { onPointerdown: z },
            S(u(o).lg("asai.confirm")),
            33
            /* TEXT, NEED_HYDRATION */
          ),
          i.value ? (g(), v(
            "button",
            {
              key: 0,
              onPointerdown: E
            },
            S(u(o).lg("asai.download")),
            33
            /* TEXT, NEED_HYDRATION */
          )) : W("v-if", !0),
          i.value ? (g(), v(
            "button",
            {
              key: 1,
              onPointerdown: I
            },
            S(u(o).lg("asai.upload")),
            33
            /* TEXT, NEED_HYDRATION */
          )) : W("v-if", !0)
        ]),
        i.value ? (g(), v("div", Ha, [
          p("img", { src: i.value }, null, 8, qa)
        ])) : W("v-if", !0)
      ])) : W("v-if", !0)
    ]));
  }
}), Xa = /* @__PURE__ */ q(Ya, [["__scopeId", "data-v-52323920"]]), Va = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Xa
}, Symbol.toStringTag, { value: "Module" })), Na = { class: "as-json-area as-form-line" }, Ja = {
  key: 0,
  class: "as-json-tit"
}, Ga = ["value"], Ka = { class: "as-json-main" }, Qa = {
  key: 1,
  class: "as-json-btns"
}, Za = /* @__PURE__ */ L({
  __name: "JsonEditor",
  props: {
    ujt: {},
    asaidata: {},
    fnapi: {}
  },
  setup(n) {
    var l;
    const e = n, { $fn: t } = e.ujt;
    !((l = e.asaidata) != null && l.data) && e.asaidata.path && o(), e.asaidata.ty === "txt" && (e.asaidata.data = JSON.stringify(e.asaidata.data, null, 2));
    function o() {
      var a;
      (a = e.fnapi) == null || a.apiGet("/api/asaijson/manage/select/?path=" + e.asaidata.path).then((i) => {
        e.asaidata.data = i.data;
      });
    }
    function s() {
      var a;
      (a = e.fnapi) == null || a.apiGet("/api/asaijson/manage/delete/?path=" + e.asaidata.path).then((i) => {
        console.log(666.703, i);
      });
    }
    function r() {
      var a;
      (a = e.fnapi) == null || a.apiPost(
        "/api/asaijson/manage/update/?path=" + e.asaidata.path,
        e.asaidata.data
      ).then((i) => {
        console.log(666.702, i);
      });
    }
    return (a, i) => {
      var d;
      const f = x("AsaiForm");
      return g(), v("div", Na, [
        a.asaidata.btn ? (g(), v("div", Ja, [
          p(
            "button",
            {
              onPointerdown: i[0] || (i[0] = (c) => o())
            },
            S(u(t).lg("asai.read")),
            33
            /* TEXT, NEED_HYDRATION */
          ),
          J(p(
            "input",
            {
              type: "text",
              "onUpdate:modelValue": i[1] || (i[1] = (c) => a.asaidata.path = c)
            },
            null,
            512
            /* NEED_PATCH */
          ), [
            [ne, a.asaidata.path]
          ]),
          (d = a.asaidata.list) != null && d.length ? J((g(), v(
            "select",
            {
              key: 0,
              "onUpdate:modelValue": i[2] || (i[2] = (c) => a.asaidata.path = c)
            },
            [
              (g(!0), v(
                D,
                null,
                Q(a.asaidata.list, (c) => (g(), v("option", {
                  value: c.value
                }, S(c.label), 9, Ga))),
                256
                /* UNKEYED_FRAGMENT */
              ))
            ],
            512
            /* NEED_PATCH */
          )), [
            [ue, a.asaidata.path]
          ]) : W("v-if", !0)
        ])) : W("v-if", !0),
        p("div", Ka, [
          a.asaidata.ty == "txt" ? J((g(), v(
            "textarea",
            {
              key: 0,
              class: "as-json-txt",
              "onUpdate:modelValue": i[3] || (i[3] = (c) => a.asaidata.data = c)
            },
            null,
            512
            /* NEED_PATCH */
          )), [
            [ne, a.asaidata.data]
          ]) : (g(), v(
            D,
            { key: 1 },
            [
              te(
                S(a.asaidata.eq > 1 ? Array.isArray(a.asaidata) ? "[" : "{" : "") + " ",
                1
                /* TEXT */
              ),
              B(f, {
                ujt: a.ujt,
                asaidata: a.asaidata
              }, null, 8, ["ujt", "asaidata"]),
              te(
                " " + S(a.asaidata.eq > 1 ? Array.isArray(a.asaidata) ? "]" : "}" : ""),
                1
                /* TEXT */
              )
            ],
            64
            /* STABLE_FRAGMENT */
          ))
        ]),
        a.asaidata.btn ? (g(), v("div", Qa, [
          p(
            "button",
            {
              onPointerdown: i[4] || (i[4] = (c) => r())
            },
            S(u(t).lg("asai.submit")),
            33
            /* TEXT, NEED_HYDRATION */
          ),
          p(
            "button",
            {
              onPointerdown: i[5] || (i[5] = (c) => s())
            },
            S(u(t).lg("asai.del")),
            33
            /* TEXT, NEED_HYDRATION */
          )
        ])) : W("v-if", !0)
      ]);
    };
  }
}), es = /* @__PURE__ */ q(Za, [["__scopeId", "data-v-de404bda"]]), ts = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: es
}, Symbol.toStringTag, { value: "Module" })), os = {
  key: 0,
  class: "as-ed-dir"
}, ns = {
  key: 2,
  class: "as-ed-for"
}, as = { class: "as-ed-item" }, ss = {
  key: 1,
  class: "as-ed-dir"
}, ls = { class: "as-ed-for" }, is = { class: "as-ed-index" }, rs = {
  key: 3,
  class: "as-ed-span"
}, us = /* @__PURE__ */ L({
  __name: "JsonTree",
  props: {
    ckey: {},
    cdata: {},
    cval: {}
  },
  setup(n) {
    const e = n, t = ie({});
    t.publishlist = !0, (e == null ? void 0 : e.ckey) === "publishlist" && (e != null && e.cdata) && (e != null && e.cdata[e == null ? void 0 : e.ckey]) && Object.keys(e == null ? void 0 : e.cdata[e == null ? void 0 : e.ckey]).forEach((l) => {
      t[l] = !0;
    });
    const o = G(() => {
      let l = typeof e.cdata[e.ckey];
      if (l === "object") {
        if (e.cdata[e.ckey] && e.cdata[e.ckey]["@path"])
          return "path";
        if (e.cdata[e.ckey]) {
          if (Array.isArray(e.cdata[e.ckey]))
            return "array";
        } else return "null";
      }
      return l;
    });
    function s(l) {
      t[l] = !t[l];
    }
    function r() {
      var l;
      if (e != null && e.cdata[e.ckey]["@path"] && ((l = e == null ? void 0 : e.cval) != null && l.apikeys)) {
        const a = e.cval.apikeys.findIndex(
          (i) => i === e.cdata[e.ckey]["@path"]
        );
        a > -1 ? e.cval.apikeys.splice(a, 1) : e.cval.apikeys.push(e.cdata[e.ckey]["@path"]);
      }
      e.cval.setapikeys(e.cval.apikeys);
    }
    return (l, a) => o.value === "object" ? (g(), v("div", os, [
      l.ckey !== "publishlist" ? (g(), v(
        D,
        { key: 0 },
        [
          t[l.ckey] ? (g(), v(
            "div",
            {
              key: 1,
              class: "as-ed-mg",
              onPointerdown: a[1] || (a[1] = (i) => s(l.ckey))
            },
            " - " + S(l.ckey),
            33
            /* TEXT, NEED_HYDRATION */
          )) : (g(), v(
            "div",
            {
              key: 0,
              class: "as-ed-mg",
              onPointerdown: a[0] || (a[0] = (i) => s(l.ckey))
            },
            " + " + S(l.ckey),
            33
            /* TEXT, NEED_HYDRATION */
          )),
          t[l.ckey] ? (g(), v("div", ns, [
            (g(!0), v(
              D,
              null,
              Q(Object.keys(l.cdata[l.ckey]), (i) => (g(), v("div", {
                class: "as-ed-for-item",
                key: i
              }, [
                p("div", as, [
                  B(ye, {
                    cval: l.cval,
                    ckey: i,
                    cdata: l.cdata[l.ckey]
                  }, null, 8, ["cval", "ckey", "cdata"])
                ])
              ]))),
              128
              /* KEYED_FRAGMENT */
            ))
          ])) : W("v-if", !0)
        ],
        64
        /* STABLE_FRAGMENT */
      )) : (g(!0), v(
        D,
        { key: 1 },
        Q(Object.keys(l.cdata[l.ckey]), (i) => (g(), v("div", {
          class: "as-ed-for-item",
          key: i
        }, [
          B(ye, {
            cval: l.cval,
            ckey: i,
            cdata: l.cdata[l.ckey]
          }, null, 8, ["cval", "ckey", "cdata"])
        ]))),
        128
        /* KEYED_FRAGMENT */
      ))
    ])) : o.value === "array" ? (g(), v("div", ss, [
      p(
        "div",
        {
          class: "as-ed-mg",
          onPointerdown: s
        },
        "+ " + S(l.ckey),
        33
        /* TEXT, NEED_HYDRATION */
      ),
      p("div", ls, [
        (g(!0), v(
          D,
          null,
          Q(l.cdata[l.ckey], (i, f) => (g(), v("div", {
            class: "as-ed-for-item",
            key: f
          }, [
            p("div", is, [
              B(ye, {
                cval: l.cval,
                ckey: f,
                cdata: l.cdata[l.ckey]
              }, null, 8, ["cval", "ckey", "cdata"])
            ])
          ]))),
          128
          /* KEYED_FRAGMENT */
        ))
      ])
    ])) : o.value === "path" ? (g(), v(
      "div",
      {
        key: 2,
        class: Z(
          e.cval.apikeys.includes(e.cdata[e.ckey]["@path"]) ? "as-ed-path-cur" : "as-ed-path"
        ),
        onPointerdown: a[2] || (a[2] = (i) => r())
      },
      S(l.ckey),
      35
      /* TEXT, CLASS, NEED_HYDRATION */
    )) : (g(), v(
      "span",
      rs,
      S(l.ckey),
      1
      /* TEXT */
    ));
  }
}), ye = /* @__PURE__ */ q(us, [["__scopeId", "data-v-e003da44"]]), cs = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ye
}, Symbol.toStringTag, { value: "Module" })), ds = { class: "as-floating-menu" }, ps = { key: 0 }, fs = { key: 1 }, ms = ["onPointerup"], gs = /* @__PURE__ */ L({
  __name: "MenuShowFix",
  props: {
    ujt: {},
    menus: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o } = e.ujt, s = N(!1);
    function r() {
      s.value = !s.value;
    }
    const l = G(() => [
      { value: "/", label: t.lg("asai.home") },
      { fn: () => t.changetheme("auto"), label: t.lg("asai.theme") },
      {
        fn: () => t.changelang("auto"),
        label: t.lg("asai.langs.default")
      },
      ...e.menus || []
    ]);
    return (a, i) => !u(o).sys || u(o).sys.devlevel > 1 ? (g(), X(be, {
      key: 0,
      to: "#popteleport"
    }, [
      p("div", ds, [
        p(
          "button",
          {
            class: "as-floating-button",
            onPointerdown: r
          },
          [
            s.value ? (g(), v("span", ps, "×")) : (g(), v("span", fs, "☰"))
          ],
          32
          /* NEED_HYDRATION */
        ),
        p(
          "ul",
          {
            class: Z(["as-floating-menus", { open: s.value }])
          },
          [
            (g(!0), v(
              D,
              null,
              Q(l.value, (f, d) => (g(), v("li", {
                key: "menu" + d,
                class: Z(
                  f.value && u(o).location.hash.includes(f.value) ? "active" : ""
                ),
                onPointerup: (c) => {
                  var m;
                  return f.value ? u(t).sethash(f.value) : (m = f == null ? void 0 : f.fn) == null ? void 0 : m.call(f);
                }
              }, S(f.label || f.value), 43, ms))),
              128
              /* KEYED_FRAGMENT */
            ))
          ],
          2
          /* CLASS */
        )
      ])
    ])) : W("v-if", !0);
  }
}), hs = /* @__PURE__ */ q(gs, [["__scopeId", "data-v-9ec55b82"]]), vs = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: hs
}, Symbol.toStringTag, { value: "Module" })), _s = { class: "app-menu-area" }, ys = /* @__PURE__ */ L({
  __name: "RouterMap",
  props: {
    ujt: {},
    menus: {}
  },
  setup(n) {
    const e = n, { $fn: t } = e.ujt;
    return (o, s) => (g(), v("div", _s, [
      (g(!0), v(
        D,
        null,
        Q(o.menus, (r) => (g(), v(
          "div",
          {
            class: "app-menu",
            onPointerdown: s[0] || (s[0] = (l) => u(t).sethash("item.value"))
          },
          S(r.label),
          33
          /* TEXT, NEED_HYDRATION */
        ))),
        256
        /* UNKEYED_FRAGMENT */
      ))
    ]));
  }
}), bs = /* @__PURE__ */ q(ys, [["__scopeId", "data-v-6e4817f2"]]), $s = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: bs
}, Symbol.toStringTag, { value: "Module" })), ws = /* @__PURE__ */ L({
  __name: "RouterView",
  props: {
    ujt: {},
    ty: {}
  },
  setup(n) {
    const e = n, { $model: t, $fn: o, $global: s } = e.ujt, r = Xe({ comp: null });
    o.getcomp = (a) => {
      try {
        try {
          return ve(t.comps[`./${a}.vue`]);
        } catch {
          return a && a.endsWith("/default") ? ve(t.comps[`./${a.slice(0, -8)}.vue`]) : ve(() => import("./asai-BZJoH0y5.mjs"));
        }
      } catch {
        return ve(() => import("./asai-BZJoH0y5.mjs"));
      }
    };
    const l = Oe(
      () => s.location.comps[e.ty],
      (a, i) => {
        a && a !== i && (r.comp = o.getcomp(a));
      },
      { immediate: !0 }
    );
    return $e(() => {
      l && l();
    }), (a, i) => (g(), X(le(u(r).comp), { ujt: a.ujt }, null, 8, ["ujt"]));
  }
}), js = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ws
}, Symbol.toStringTag, { value: "Module" })), ks = /* @__PURE__ */ L({
  __name: "VirtualList",
  props: {
    items: {
      type: Array,
      required: !0
    },
    itemHeight: {
      type: Number,
      default: 50
    },
    buffer: {
      type: Number,
      default: 5
    }
  },
  setup(n, { expose: e }) {
    const t = n, o = N(null), s = N(0), r = N([]), l = N(10), a = G(() => t.items.reduce((y, k, C) => y + i(C), 0)), i = (y) => r.value[y] || t.itemHeight, f = G(() => Math.max(0, h(s.value) - t.buffer)), d = G(() => Math.min(
      t.items.length,
      f.value + l.value + t.buffer * 2
    )), c = G(() => t.items.slice(f.value, d.value).map((y, k) => {
      const C = f.value + k, O = m(C);
      return {
        index: C,
        id: y.id || C,
        data: y,
        offset: O
      };
    })), m = (y) => t.items.slice(0, y).reduce((k, C, O) => k + i(O), 0), h = (y) => {
      let k = 0, C = t.items.length - 1;
      for (; k <= C; ) {
        const O = Math.floor((k + C) / 2);
        m(O) <= y ? k = O + 1 : C = O - 1;
      }
      return C;
    }, _ = () => {
      requestAnimationFrame(() => {
        var y;
        s.value = (y = o.value) == null ? void 0 : y.scrollTop;
      });
    }, $ = () => {
      o.value.querySelectorAll(".virtual-list-item").forEach((k, C) => {
        const O = f.value + C;
        r.value[O] = k.offsetHeight;
      });
    };
    return ce(() => {
      l.value = Math.ceil(
        o.value.clientHeight / t.itemHeight
      ), _();
    }), e({
      freshVirtualList: () => {
        de(() => {
          $();
        });
      }
    }), Ve(() => {
      $();
    }), (y, k) => (g(), v(
      "div",
      {
        class: "virtual-list-container",
        onScroll: _,
        ref_key: "container",
        ref: o
      },
      [
        p(
          "div",
          {
            class: "virtual-list-wrapper",
            style: K({ height: a.value + "px" })
          },
          [
            (g(!0), v(
              D,
              null,
              Q(c.value, (C) => (g(), v(
                "div",
                {
                  class: "virtual-list-item",
                  key: C.id,
                  style: K({ transform: `translateY(${C.offset}px)` }),
                  ref_for: !0,
                  ref: "items"
                },
                [
                  H(y.$slots, "default", { item: C }, void 0, !0)
                ],
                4
                /* STYLE */
              ))),
              128
              /* KEYED_FRAGMENT */
            ))
          ],
          4
          /* STYLE */
        )
      ],
      544
      /* NEED_HYDRATION, NEED_PATCH */
    ));
  }
}), Ss = /* @__PURE__ */ q(ks, [["__scopeId", "data-v-231717b5"]]), Ps = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ss
}, Symbol.toStringTag, { value: "Module" })), As = /* @__PURE__ */ L({
  __name: "ZoomContainer",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    t.scale = 1;
    const o = N(null);
    let s = null;
    const r = () => {
      var f, d;
      const i = Math.min(
        window.innerWidth / (((f = t.sys) == null ? void 0 : f.zoomwidth) || 1920),
        window.innerHeight / (((d = t.sys) == null ? void 0 : d.zoomheight) || 1080)
      );
      t.scale = i.toFixed(2);
    }, l = () => {
      clearTimeout(s), s = setTimeout(() => {
        requestAnimationFrame(r);
      }, 150);
    }, a = G(() => {
      var i, f;
      return {
        width: (i = t.sys) != null && i.zoomwidth ? t.sys.zoomwidth + "px" : "1920px",
        height: (f = t.sys) != null && f.zoomheight ? t.sys.zoomheight + "px" : "1080px",
        transform: `scale(${t.scale}) translate(-50%,-50%)`
      };
    });
    return ce(() => {
      de(r), window.addEventListener("resize", l);
    }), re(() => {
      window.removeEventListener("resize", l), clearTimeout(s);
    }), (i, f) => (g(), v(
      "div",
      {
        ref_key: "containerRef",
        ref: o,
        class: "scale-wrapper",
        id: "asaizoomarea",
        style: K(a.value)
      },
      [
        H(i.$slots, "default", {}, void 0, !0)
      ],
      4
      /* STYLE */
    ));
  }
}), Os = /* @__PURE__ */ q(As, [["__scopeId", "data-v-eafd8b27"]]), Cs = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Os
}, Symbol.toStringTag, { value: "Module" })), Ms = /* @__PURE__ */ L({
  __name: "AsaiFormLabel",
  props: {
    ujt: {},
    asaidata: {},
    formdata: {},
    formkey: {}
  },
  setup(n) {
    const e = n;
    return (t, o) => {
      var s, r, l, a, i, f, d, c;
      return g(), v("label", null, [
        Array.isArray(e.formdata) ? (g(), v(
          "span",
          {
            key: 0,
            class: Z(`${t.asaidata.ic > 1 ? "as-form-ico-arr" : ""}${(l = (r = (s = t.asaidata) == null ? void 0 : s.rule) == null ? void 0 : r[t.formkey]) != null && l.require ? " as-form-ico-require" : ""}`)
          },
          null,
          2
          /* CLASS */
        )) : (g(), v(
          "span",
          {
            key: 1,
            class: Z(`${t.asaidata.ic > 1 ? "as-form-ico" : ""}${(f = (i = (a = t.asaidata) == null ? void 0 : a.rule) == null ? void 0 : i[t.formkey]) != null && f.require ? " as-form-ico-require" : ""}`)
          },
          S(t.asaidata.eq > 2 ? '"' : "") + S(((c = (d = e.asaidata) == null ? void 0 : d.lang) == null ? void 0 : c[t.formkey]) || t.formkey) + S(t.asaidata.eq > 2 ? '"' : "") + S(t.asaidata.eq ? ":" : ""),
          3
          /* TEXT, CLASS */
        )),
        H(t.$slots, "default", {}, void 0, !0),
        te(
          S(t.asaidata.eq > 2 ? "," : ""),
          1
          /* TEXT */
        )
      ]);
    };
  }
}), Ts = /* @__PURE__ */ q(Ms, [["__scopeId", "data-v-644a97ad"]]), Ue = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ts
}, Symbol.toStringTag, { value: "Module" })), Ls = /* @__PURE__ */ L({
  __name: "AsaiFormLi",
  props: {
    ujt: {},
    asaidata: {},
    formdata: {}
  },
  setup(n) {
    const e = n;
    return (t, o) => {
      const s = x("AsaiFormObject"), r = x("AsaiInput");
      return g(!0), v(
        D,
        null,
        Q(e.formdata, (l, a) => {
          var i, f, d, c;
          return g(), v(
            D,
            null,
            [
              (i = t.asaidata) != null && i.cmComp && ((f = t.asaidata) != null && f.cmComp(a)) ? (g(), X(le(t.asaidata.cmComp(a)), {
                key: 0,
                ujt: t.ujt,
                asaidata: t.asaidata,
                formdata: t.formdata,
                formkey: a
              }, null, 8, ["ujt", "asaidata", "formdata", "formkey"])) : typeof l == "object" ? (g(), v(
                D,
                { key: 1 },
                [
                  (d = t.asaidata) != null && d.cmComp && ((c = t.asaidata) != null && c.cmComp("object")) ? (g(), X(le(t.asaidata.cmComp("object")), {
                    key: 0,
                    ujt: t.ujt,
                    asaidata: t.asaidata,
                    formdata: t.formdata,
                    formkey: a
                  }, null, 8, ["ujt", "asaidata", "formdata", "formkey"])) : (g(), X(s, {
                    key: 1,
                    ujt: t.ujt,
                    asaidata: t.asaidata,
                    formdata: t.formdata,
                    formkey: a
                  }, null, 8, ["ujt", "asaidata", "formdata", "formkey"]))
                ],
                64
                /* STABLE_FRAGMENT */
              )) : (g(), X(r, {
                key: 2,
                ujt: t.ujt,
                asaidata: t.asaidata,
                formdata: t.formdata,
                formkey: a
              }, null, 8, ["ujt", "asaidata", "formdata", "formkey"]))
            ],
            64
            /* STABLE_FRAGMENT */
          );
        }),
        256
        /* UNKEYED_FRAGMENT */
      );
    };
  }
}), Ee = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ls
}, Symbol.toStringTag, { value: "Module" })), zs = /* @__PURE__ */ L({
  __name: "AsaiFormObject",
  props: {
    ujt: {},
    asaidata: {},
    formdata: {},
    formkey: {}
  },
  setup(n) {
    const e = n, t = N(!0);
    return (o, s) => {
      var l, a;
      const r = x("AsaiFormLi");
      return typeof e.formdata[o.formkey] == "object" ? (g(), v(
        "div",
        {
          key: 0,
          class: Z(`${o.asaidata.ic ? "as-form-obj" : ""}`)
        },
        [
          p(
            "span",
            {
              class: Z(`${o.asaidata.ic > 1 ? t.value ? "as-form-ico-close" : "as-form-ico-open" : ""}`),
              onPointerdown: s[0] || (s[0] = (i) => t.value = !t.value)
            },
            S(o.asaidata.eq > 2 ? '"' : "") + S(((l = e.asaidata) == null ? void 0 : l.lang) && ((a = e.asaidata) == null ? void 0 : a.lang[o.formkey]) || o.formkey) + S(o.asaidata.eq > 2 ? '"' : "") + S(o.asaidata.eq ? ":" : ""),
            35
            /* TEXT, CLASS, NEED_HYDRATION */
          ),
          te(
            " " + S(o.asaidata.eq > 1 ? Array.isArray(e.formdata[o.formkey]) ? "[" : "{" : "") + " ",
            1
            /* TEXT */
          ),
          t.value ? (g(), X(r, {
            key: 0,
            ujt: o.ujt,
            asaidata: o.asaidata,
            formdata: e.formdata[o.formkey]
          }, null, 8, ["ujt", "asaidata", "formdata"])) : (g(), v(
            D,
            { key: 1 },
            [
              te("...")
            ],
            64
            /* STABLE_FRAGMENT */
          )),
          te(
            " " + S(o.asaidata.eq > 1 ? Array.isArray(e.formdata[o.formkey]) ? "]" : "}" : "") + S(o.asaidata.eq > 2 ? "," : ""),
            1
            /* TEXT */
          )
        ],
        2
        /* CLASS */
      )) : W("v-if", !0);
    };
  }
}), xe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: zs
}, Symbol.toStringTag, { value: "Module" })), Us = ["type", "max", "min"], Es = /* @__PURE__ */ L({
  __name: "AsaiInput",
  props: {
    ujt: {},
    asaidata: {},
    formdata: {},
    formkey: {}
  },
  setup(n) {
    const e = n;
    return (t, o) => {
      const s = x("AsaiFormLabel");
      return g(), X(s, {
        ujt: t.ujt,
        asaidata: t.asaidata,
        formdata: t.formdata,
        formkey: t.formkey
      }, {
        default: oe(() => {
          var r, l, a, i, f, d;
          return [
            te(
              S(typeof e.formdata[t.formkey] == "string" && t.asaidata.eq > 2 ? '"' : "") + " ",
              1
              /* TEXT */
            ),
            J(p("input", {
              type: ((l = (r = e.asaidata.rule) == null ? void 0 : r[t.formkey]) == null ? void 0 : l.type) || (typeof e.formdata[t.formkey] == "boolean" ? "checkbox" : typeof e.formdata[t.formkey] == "number" ? "number" : "string"),
              max: (i = (a = e.asaidata.rule) == null ? void 0 : a[t.formkey]) == null ? void 0 : i.max,
              min: (d = (f = e.asaidata.rule) == null ? void 0 : f[t.formkey]) == null ? void 0 : d.min,
              "onUpdate:modelValue": o[0] || (o[0] = (c) => e.formdata[t.formkey] = c)
            }, null, 8, Us), [
              [Ne, e.formdata[t.formkey]]
            ]),
            te(
              S(typeof e.formdata[t.formkey] == "string" && t.asaidata.eq > 2 ? '"' : ""),
              1
              /* TEXT */
            )
          ];
        }),
        _: 1
        /* STABLE */
      }, 8, ["ujt", "asaidata", "formdata", "formkey"]);
    };
  }
}), Ie = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Es
}, Symbol.toStringTag, { value: "Module" })), xs = { class: "as-richtext-toolbar" }, Is = { value: "" }, Ds = ["value"], Fs = { value: "p" }, Rs = ["value"], Ws = ["title"], Bs = ["title"], Hs = ["title"], qs = ["title"], Ys = ["title"], Xs = ["title"], Vs = ["title"], Ns = ["title"], Js = { class: "as-richtext-content" }, Gs = ["placeholder"], Ks = /* @__PURE__ */ L({
  __name: "AsaiRichEditor",
  props: {
    ujt: {},
    asaidata: {},
    formdata: {},
    formkey: {}
  },
  setup(n) {
    var z, E, I;
    const e = n, { $global: t } = e.ujt, o = {
      img: {
        maxWidth: 288,
        quality: 0.8
      },
      imgurls: {}
    }, s = N(null), r = N(null), l = N(null), a = N(((I = (E = (z = e.asaidata) == null ? void 0 : z.rule) == null ? void 0 : E[e.formkey]) == null ? void 0 : I.editorty) || 2);
    ce(i);
    function i() {
      r.value && (r.value.innerHTML = e.formdata[e.formkey]);
    }
    function f(T, w = 0) {
      const M = /* @__PURE__ */ new Set([
        "a",
        "figure",
        "figure",
        "img",
        "video",
        "ul",
        "ol",
        "li",
        "h1",
        "h2",
        "h3",
        "h4",
        "h5",
        "h6",
        "p",
        "strong",
        "em",
        "span",
        "font",
        "b",
        "u",
        "i",
        "strike",
        "nav",
        "footer",
        "section",
        "article",
        "div"
      ]), P = /* @__PURE__ */ new Set([
        "href",
        "src",
        "alt",
        "size",
        "color",
        "title",
        "style",
        "controls",
        "download"
      ]), b = new DOMParser().parseFromString(T, "text/html");
      return Array.from(b.body.querySelectorAll("*")).reverse().forEach((j) => {
        var F;
        const U = j.tagName.toLowerCase();
        if (!M.has(U))
          return j.remove();
        w && U == "img" && (j != null && j.src) && !((F = o.imgurls) != null && F[j.src]) && (j.setAttribute("crossOrigin", "anonymous"), o.imgurls[j.src] = "1"), Array.from(j.attributes).forEach(({ name: R, value: Y }) => {
          if (!P.has(R))
            return j.removeAttribute(R);
          if (["href", "src"].includes(R)) {
            const se = d(Y, w);
            se ? j.setAttribute(R, se) : j.removeAttribute(R);
          }
        });
      }), b.body.innerHTML;
    }
    function d(T, w = 0) {
      try {
        if (w)
          return T;
        const M = new URL(T, location.href);
        if ([
          "http:",
          "https:",
          "mailto:",
          "tel:",
          "blob:",
          "data:",
          "ftp:"
        ].includes(M.protocol))
          return M.href;
      } catch {
        return T.startsWith("#") || !/:/.test(T) ? T : "";
      }
      return "";
    }
    function c() {
      const T = window.prompt("请输入链接地址");
      T && O("createLink", T);
    }
    function m(T) {
      s.value.accept = `${T}/*`, de(() => {
        var w;
        return (w = s.value) == null ? void 0 : w.click();
      });
    }
    async function h(T) {
      var b;
      const w = (b = T.target.files) == null ? void 0 : b[0];
      if (!w)
        return;
      let M, P = "";
      w.type.startsWith("image") ? (M = await _(w), P = `<img src="${M}" style="max-width:100%">`) : (w.size > 1024 * 1024 ? M = URL.createObjectURL(w) : M = await _(w), w.type.startsWith("video") ? P = `<video controls src="${M}" style="max-width:100%"></video>` : P = `<a href="${M}" download="${w.name}">${w.name}</a>`), O("insertHTML", P);
    }
    function _(T) {
      return new Promise((w, M) => {
        if (!T)
          return M(new Error("Invalid file"));
        const P = new FileReader();
        P.onload = (b) => {
          T.type.startsWith("image/") ? $(b.target.result).then((j) => {
            w(j);
          }).catch((j) => {
            M(j);
          }) : w(b.target.result);
        }, P.onerror = () => M(new Error("File read failed")), P.readAsDataURL(T);
      });
    }
    function $(T) {
      return new Promise((w, M) => {
        const P = new Image(), b = document.createElement("canvas"), j = b.getContext("2d", {
          willReadFrequently: !1
        });
        let U = !1;
        const F = () => {
          U || (P.onload = P.onerror = null, P.src = "", b.width = b.height = 0, U = !0);
        };
        P.crossOrigin = "anonymous", P.src = T, P.onload = () => {
          try {
            const R = Math.min(o.img.maxWidth / P.width, 1);
            b.width = R < 1 ? o.img.maxWidth : P.width, b.height = R < 1 ? P.height * R : P.height, j.imageSmoothingEnabled = !0, j.imageSmoothingQuality = "high", j.clearRect(0, 0, b.width, b.height), j.drawImage(P, 0, 0, b.width, b.height);
            const Y = b.toDataURL(
              "image/jpeg",
              o.img.quality
            );
            F(), w(Y);
          } catch (R) {
            F(), M(R);
          }
        }, P.onerror = (R) => {
          F(), M(new Error("Image load failed"));
        };
      });
    }
    function y(T) {
      T.preventDefault(), Object.keys(o.imgurls).forEach((w) => {
        $(o.imgurls[w]).then((M) => {
          o.imgurls[w] == "1" && (o.imgurls[w] = "2", e.formdata[e.formkey].replaceAll(
            o.imgurls[w],
            M
          ));
        });
      });
    }
    function k(T) {
      var P, b;
      T.preventDefault();
      const w = ((P = T.clipboardData) == null ? void 0 : P.getData("text/html")) || "", M = f(w, 1) || ((b = T.clipboardData) == null ? void 0 : b.getData("text/plain")) || "";
      O("insertHTML", M);
    }
    function C(T) {
      r.value && (e.formdata[e.formkey] = f(
        r.value.innerHTML
      ));
    }
    function O(T, w = null) {
      r.value && document.execCommand(T, !1, w);
    }
    function A() {
      a.value++, a.value > 2 && (a.value = 0), de(i);
    }
    return (T, w) => {
      var M, P, b;
      return g(), v(
        "div",
        {
          class: "as-richtext-area",
          style: K(((P = (M = e.asaidata.rule) == null ? void 0 : M[e.formkey]) == null ? void 0 : P.style) || {})
        },
        [
          p("div", xs, [
            p(
              "select",
              {
                onChange: w[0] || (w[0] = (j) => O("fontSize", j.target.value))
              },
              [
                p(
                  "option",
                  Is,
                  S(u(t).lang.richtexteditor.fontsize),
                  1
                  /* TEXT */
                ),
                (g(), v(
                  D,
                  null,
                  Q(8, (j) => p("option", {
                    key: "size" + j,
                    value: j * (j - 1) + 8
                  }, S(j * (j - 1) + 8) + "px ", 9, Ds)),
                  64
                  /* STABLE_FRAGMENT */
                ))
              ],
              32
              /* NEED_HYDRATION */
            ),
            p(
              "select",
              {
                onChange: w[1] || (w[1] = (j) => O("formatBlock", j.target.value))
              },
              [
                p(
                  "option",
                  Fs,
                  S(u(t).lang.richtexteditor.paragraph),
                  1
                  /* TEXT */
                ),
                (g(), v(
                  D,
                  null,
                  Q(6, (j) => p("option", {
                    key: "h" + j,
                    value: "h" + j
                  }, S(u(t).lang.richtexteditor.title) + S(j), 9, Rs)),
                  64
                  /* STABLE_FRAGMENT */
                ))
              ],
              32
              /* NEED_HYDRATION */
            ),
            p("button", {
              onPointerdown: w[2] || (w[2] = (j) => O("bold")),
              title: u(t).lang.richtexteditor.bold
            }, " B ", 40, Ws),
            p("button", {
              onPointerdown: w[3] || (w[3] = (j) => O("underline")),
              title: u(t).lang.richtexteditor.underline
            }, " U ", 40, Bs),
            p("button", {
              onPointerdown: w[4] || (w[4] = (j) => O("italic")),
              title: u(t).lang.richtexteditor.italic
            }, " I ", 40, Hs),
            p("button", {
              onPointerdown: w[5] || (w[5] = (j) => O("strikethrough")),
              title: u(t).lang.richtexteditor.strikethrough
            }, " S ", 40, qs),
            p("input", {
              type: "color",
              onInput: w[6] || (w[6] = (j) => O("foreColor", j.target.value)),
              title: u(t).lang.richtexteditor.foreColor
            }, null, 40, Ys),
            p("input", {
              type: "color",
              onInput: w[7] || (w[7] = (j) => O("backColor", j.target.value)),
              title: u(t).lang.richtexteditor.backColor
            }, null, 40, Xs),
            p("button", {
              onPointerdown: w[8] || (w[8] = (j) => O("insertOrderedList")),
              title: u(t).lang.richtexteditor.insertOrderedList
            }, " 有 ", 40, Vs),
            p("button", {
              onPointerdown: w[9] || (w[9] = (j) => O("insertUnorderedList")),
              title: u(t).lang.richtexteditor.insertUnorderedList
            }, " 无 ", 40, Ns),
            p(
              "button",
              {
                onPointerdown: w[10] || (w[10] = (j) => O("justifyCenter")),
                title: "居中"
              },
              " 中 ",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[11] || (w[11] = (j) => O("justifyFull")),
                title: "两端对齐"
              },
              " 两 ",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[12] || (w[12] = (j) => O("justifyRight")),
                title: "右对齐"
              },
              " 右 ",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[13] || (w[13] = (j) => O("justifyLeft")),
                title: "左对齐"
              },
              " 左 ",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[14] || (w[14] = (j) => O("delete")),
                title: "删除"
              },
              " 删 ",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[15] || (w[15] = (j) => c()),
                title: "链接"
              },
              "链",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[16] || (w[16] = (j) => O("unlink")),
                title: "删除链接"
              },
              " 除 ",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[17] || (w[17] = (j) => m("image")),
                title: "图片"
              },
              "🖼️",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[18] || (w[18] = (j) => m("video")),
                title: "视频"
              },
              "🎬",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[19] || (w[19] = (j) => m("file")),
                title: "文件"
              },
              "📎",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: y,
                title: "上传"
              },
              "上",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              {
                onPointerdown: w[20] || (w[20] = (j) => A()),
                title: "切换"
              },
              "HTML",
              32
              /* NEED_HYDRATION */
            )
          ]),
          p("div", Js, [
            a.value != 1 ? (g(), v(
              "div",
              {
                key: 0,
                style: K({ width: a.value > 1 ? "50%" : "100%" }),
                ref_key: "rfRichEditor",
                ref: r,
                contenteditable: "true",
                onPaste: k,
                onInput: C
              },
              null,
              36
              /* STYLE, NEED_HYDRATION */
            )) : W("v-if", !0),
            a.value > 0 ? J((g(), v("textarea", {
              key: 1,
              placeholder: ((b = e == null ? void 0 : e.opt) == null ? void 0 : b.placeholder) || "",
              ref_key: "rfRichCode",
              ref: l,
              "onUpdate:modelValue": w[21] || (w[21] = (j) => e.formdata[e.formkey] = j),
              style: K({ width: a.value > 1 ? "50%" : "100%" })
            }, null, 12, Gs)), [
              [ne, e.formdata[e.formkey]]
            ]) : W("v-if", !0)
          ]),
          p(
            "input",
            {
              ref_key: "fileInput",
              ref: s,
              type: "file",
              hidden: "",
              onChange: h
            },
            null,
            544
            /* NEED_HYDRATION, NEED_PATCH */
          )
        ],
        4
        /* STYLE */
      );
    };
  }
}), Qs = /* @__PURE__ */ q(Ks, [["__scopeId", "data-v-b4dfaa9d"]]), De = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Qs
}, Symbol.toStringTag, { value: "Module" })), Zs = ["value"], el = /* @__PURE__ */ L({
  __name: "AsaiSelect",
  props: {
    ujt: {},
    asaidata: {},
    formdata: {},
    formkey: {}
  },
  setup(n) {
    const e = n, { $fn: t } = e.ujt;
    return (o, s) => {
      const r = x("AsaiFormLabel");
      return g(), X(r, {
        ujt: o.ujt,
        asaidata: o.asaidata,
        formdata: o.formdata,
        formkey: o.formkey
      }, {
        default: oe(() => {
          var l, a, i, f, d;
          return [
            J(p(
              "select",
              {
                "onUpdate:modelValue": s[0] || (s[0] = (c) => e.formdata[o.formkey] = c)
              },
              [
                (g(!0), v(
                  D,
                  null,
                  Q(Object.entries(
                    ((l = e.asaidata) == null ? void 0 : l.lang) && ((a = e.asaidata) == null ? void 0 : a.lang[o.formkey + "data"]) || u(t).lg((d = (f = (i = o.asaidata) == null ? void 0 : i.rule) == null ? void 0 : f[o.formkey]) == null ? void 0 : d.data) || {}
                  ), (c) => {
                    var m, h;
                    return g(), v("option", {
                      key: c[0],
                      value: c[0] === "asai" ? void 0 : ((h = (m = e.asaidata.rule) == null ? void 0 : m[o.formkey]) == null ? void 0 : h.type) == "number" ? +c[0] : c[0]
                    }, S(c[1]), 9, Zs);
                  }),
                  128
                  /* KEYED_FRAGMENT */
                ))
              ],
              512
              /* NEED_PATCH */
            ), [
              [ue, e.formdata[o.formkey]]
            ])
          ];
        }),
        _: 1
        /* STABLE */
      }, 8, ["ujt", "asaidata", "formdata", "formkey"]);
    };
  }
}), Fe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: el
}, Symbol.toStringTag, { value: "Module" })), tl = { key: 0 }, ol = ["src", "alt", "title"], nl = ["title"], al = ["title"], sl = ["accept"], ll = /* @__PURE__ */ L({
  __name: "AsaiUpBinary",
  props: {
    ujt: {},
    asaidata: {},
    formdata: {},
    formkey: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o, $model: s } = e.ujt, r = N(null), l = N(null), a = N("+"), i = async (d) => {
      var c, m, h;
      if (r.value.value) {
        if (l.value = d.target.files[0], r.value.value = "", !l.value) {
          a.value = t.lg("asai.fail");
          return;
        }
        try {
          t.api.webserver.apiUpload(
            "/api/asaifile/manage/upbinary/?path=" + s.data.sys.settingsys.path.updir + ((h = (m = (c = e.asaidata) == null ? void 0 : c.rule) == null ? void 0 : m[e.formkey]) == null ? void 0 : h.filename) || t.As.getName(l.value.name),
            l.value
          ).then((_) => {
            a.value = "", e.formdata[e.formkey] = _.data;
          });
        } catch (_) {
          a.value = t.lg("asai.fail") + " " + _.message;
        }
      }
    };
    function f() {
      r.value.click();
    }
    return (d, c) => {
      const m = x("AsaiFormLabel");
      return g(), X(m, {
        ujt: d.ujt,
        asaidata: d.asaidata,
        formdata: d.formdata,
        formkey: d.formkey
      }, {
        default: oe(() => {
          var h, _, $, y, k, C, O, A, z, E;
          return [
            p(
              "div",
              {
                class: "as-upload-image",
                onPointerdown: c[0] || (c[0] = V(() => {
                }, ["stop"])),
                onPointerup: V(f, ["stop"])
              },
              [
                e.formdata[d.formkey] ? (g(), v("div", tl, [
                  (y = ($ = (_ = (h = d.asaidata) == null ? void 0 : h.rule) == null ? void 0 : _[d.formkey]) == null ? void 0 : $.accept) != null && y.startsWith("image/") ? (g(), v("img", {
                    key: 0,
                    src: u(t).As.getUrlByCfg(u(o).link.api.webserver) + "/" + e.formdata[d.formkey],
                    alt: e.formdata[d.formkey],
                    title: e.formdata[d.formkey]
                  }, null, 8, ol)) : (g(), v("div", {
                    key: 1,
                    class: "as-upload-tit",
                    title: e.formdata[d.formkey]
                  }, S(e.formdata[d.formkey]), 9, nl))
                ])) : (g(), v("div", {
                  key: 1,
                  class: Z(a.value === "+" ? "" : "as-upload-tit"),
                  title: a.value
                }, S(a.value), 11, al))
              ],
              32
              /* NEED_HYDRATION */
            ),
            (O = (C = (k = d.asaidata) == null ? void 0 : k.rule) == null ? void 0 : C[d.formkey]) != null && O.accept ? (g(), v("input", {
              key: 0,
              accept: (E = (z = (A = d.asaidata) == null ? void 0 : A.rule) == null ? void 0 : z[d.formkey]) == null ? void 0 : E.accept,
              ref_key: "rfInputFile",
              ref: r,
              type: "file",
              hidden: "",
              onChange: i
            }, null, 40, sl)) : (g(), v(
              "input",
              {
                key: 1,
                ref_key: "rfInputFile",
                ref: r,
                type: "file",
                hidden: "",
                onChange: i
              },
              null,
              544
              /* NEED_HYDRATION, NEED_PATCH */
            ))
          ];
        }),
        _: 1
        /* STABLE */
      }, 8, ["ujt", "asaidata", "formdata", "formkey"]);
    };
  }
}), il = /* @__PURE__ */ q(ll, [["__scopeId", "data-v-0d115b6e"]]), Re = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: il
}, Symbol.toStringTag, { value: "Module" })), rl = { key: 0 }, ul = ["src", "alt", "title"], cl = ["title"], dl = ["title"], pl = ["accept"], fl = /* @__PURE__ */ L({
  __name: "AsaiUpload",
  props: {
    ujt: {},
    asaidata: {},
    formdata: {},
    formkey: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o, $model: s } = e.ujt, r = N(null), l = N(null), a = N("+"), i = async (d) => {
      if (r.value.value) {
        if (l.value = d.target.files[0], r.value.value = "", !l.value) {
          a.value = t.lg("asai.fail");
          return;
        }
        const c = new FileReader();
        c.onload = async () => {
          const m = c.result.split(",")[1];
          try {
            t.api.webserver.apiPost(
              "/api/asaifile/manage/upbase64/?path=" + s.data.sys.settingsys.path.updir + t.As.getName(l.value.name),
              m,
              {
                headers: {
                  "Content-Type": "application/json"
                }
              }
            ).then((h) => {
              a.value = "", e.formdata[e.formkey] = h.data;
            });
          } catch (h) {
            a.value = t.lg("asai.fail") + " " + h.message;
          }
        }, c.readAsDataURL(l.value);
      }
    };
    function f() {
      r.value.click();
    }
    return (d, c) => {
      const m = x("AsaiFormLabel");
      return g(), X(m, {
        ujt: d.ujt,
        asaidata: d.asaidata,
        formdata: d.formdata,
        formkey: d.formkey
      }, {
        default: oe(() => {
          var h, _, $, y, k, C, O, A, z, E;
          return [
            p(
              "div",
              {
                class: "as-upload-image",
                onPointerdown: V(f, ["prevent"])
              },
              [
                e.formdata[d.formkey] ? (g(), v("div", rl, [
                  (y = ($ = (_ = (h = d.asaidata) == null ? void 0 : h.rule) == null ? void 0 : _[d.formkey]) == null ? void 0 : $.accept) != null && y.startsWith("image/") ? (g(), v("img", {
                    key: 0,
                    src: u(t).As.getUrlByCfg(u(o).link.api.webserver) + "/" + e.formdata[d.formkey],
                    alt: e.formdata[d.formkey],
                    title: e.formdata[d.formkey]
                  }, null, 8, ul)) : (g(), v("div", {
                    key: 1,
                    class: "as-upload-tit",
                    title: e.formdata[d.formkey]
                  }, S(e.formdata[d.formkey]), 9, cl))
                ])) : (g(), v("div", {
                  key: 1,
                  class: Z(a.value === "+" ? "" : "as-upload-tit"),
                  title: a.value
                }, S(a.value), 11, dl))
              ],
              32
              /* NEED_HYDRATION */
            ),
            (O = (C = (k = d.asaidata) == null ? void 0 : k.rule) == null ? void 0 : C[d.formkey]) != null && O.accept ? (g(), v("input", {
              key: 0,
              accept: (E = (z = (A = d.asaidata) == null ? void 0 : A.rule) == null ? void 0 : z[d.formkey]) == null ? void 0 : E.accept,
              ref_key: "rfInputFile",
              ref: r,
              type: "file",
              hidden: "",
              onChange: i
            }, null, 40, pl)) : (g(), v(
              "input",
              {
                key: 1,
                ref_key: "rfInputFile",
                ref: r,
                type: "file",
                hidden: "",
                onChange: i
              },
              null,
              544
              /* NEED_HYDRATION, NEED_PATCH */
            ))
          ];
        }),
        _: 1
        /* STABLE */
      }, 8, ["ujt", "asaidata", "formdata", "formkey"]);
    };
  }
}), ml = /* @__PURE__ */ q(fl, [["__scopeId", "data-v-97eb8419"]]), We = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ml
}, Symbol.toStringTag, { value: "Module" })), gl = { key: 0 }, hl = ["src"], vl = ["title"], _l = /* @__PURE__ */ L({
  __name: "AsaiUploadImg",
  props: {
    ujt: {},
    asaidata: {},
    formdata: {},
    formkey: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o } = e.ujt, s = N(null), r = N(null), l = N("+"), a = async (d) => {
      if (s.value.value) {
        if (r.value = d.target.files[0], s.value.value = "", !r.value) {
          l.value = t.lg("asai.fail");
          return;
        }
        const c = new FileReader();
        c.onload = async () => {
          try {
            f({
              base64Data: c.result,
              asaidata: e.asaidata,
              formdata: e.formdata,
              formkey: e.formkey,
              fn: (m) => {
                e.formdata[e.formkey] = m, o.pop.popupload.stat = 0;
              }
            }), l.value = "";
          } catch (m) {
            l.value = t.lg("asai.fail") + " " + m.message;
          }
        }, c.readAsDataURL(r.value);
      }
    };
    function i() {
      s.value.click();
    }
    function f(d) {
      o.pop.popupload.stat = 1, o.pop.popupload.tit = t.lg("asai.upload"), o.pop.popupload.params = d;
    }
    return (d, c) => {
      const m = x("AsaiUploadImgCutPop"), h = x("AsaiFormLabel");
      return g(), v(
        D,
        null,
        [
          B(m, { ujt: d.ujt }, null, 8, ["ujt"]),
          B(h, {
            ujt: d.ujt,
            asaidata: d.asaidata,
            formdata: d.formdata,
            formkey: d.formkey
          }, {
            default: oe(() => [
              p(
                "div",
                {
                  class: "as-upload-image",
                  onPointerdown: V(i, ["prevent"])
                },
                [
                  e.formdata[d.formkey] ? (g(), v("div", gl, [
                    p("img", {
                      src: e.formdata[d.formkey]
                    }, null, 8, hl)
                  ])) : (g(), v("div", {
                    key: 1,
                    class: Z(l.value === "+" ? "" : "as-upload-tit"),
                    title: l.value
                  }, S(l.value), 11, vl))
                ],
                32
                /* NEED_HYDRATION */
              ),
              p(
                "input",
                {
                  accept: "image/*",
                  ref_key: "rfInputFile",
                  ref: s,
                  type: "file",
                  hidden: "",
                  onChange: a
                },
                null,
                544
                /* NEED_HYDRATION, NEED_PATCH */
              )
            ]),
            _: 1
            /* STABLE */
          }, 8, ["ujt", "asaidata", "formdata", "formkey"])
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), yl = /* @__PURE__ */ q(_l, [["__scopeId", "data-v-860e99cb"]]), Be = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: yl
}, Symbol.toStringTag, { value: "Module" })), bl = { class: "as-img-area" }, $l = {
  key: 0,
  class: "as-img-preview"
}, wl = ["src"], jl = ["src"], kl = { class: "as-img-btns" }, Sl = /* @__PURE__ */ L({
  __name: "AsaiUploadImgCut",
  props: {
    ujt: {},
    params: {}
  },
  setup(n) {
    const e = n, { $fn: t } = e.ujt, o = N(""), s = N(null), r = N(null), l = N(null), a = N({
      x: 0,
      y: 0,
      width: 0,
      height: 0,
      maxWidth: 0,
      maxHeight: 0
    }), i = N({
      type: null,
      startX: 0,
      startY: 0,
      originalX: 0,
      originalY: 0,
      originalWidth: 0,
      originalHeight: 0,
      direction: null
    }), f = G(() => ({
      transform: `translate(${a.value.x}px, ${a.value.y}px)`,
      width: `${a.value.width}px`,
      height: `${a.value.height}px`
    })), d = G(
      () => a.value.width > 0 && a.value.height > 0
    ), c = () => {
      const O = s.value, A = l.value;
      if (!O || !A) {
        console.error("Image or container element not found.");
        return;
      }
      const z = Math.min(A.clientWidth, O.naturalWidth), E = Math.min(A.clientHeight, O.naturalHeight), I = Math.min(z * 0.8, O.naturalWidth), T = Math.min(E * 0.8, O.naturalHeight);
      a.value = {
        x: (z - I) / 2,
        y: (E - T) / 2,
        width: I,
        height: T,
        maxWidth: z,
        maxHeight: E
      }, console.log("Initial crop params:", a.value);
    }, m = (O, A = null) => {
      console.log("Interaction started:", O, A);
      const z = window.event || z, E = z.touches ? z.touches[0] : z;
      i.value = {
        type: O,
        startX: E.clientX,
        startY: E.clientY,
        originalX: a.value.x,
        originalY: a.value.y,
        originalWidth: a.value.width,
        originalHeight: a.value.height,
        direction: A
      };
      const I = (T) => {
        requestAnimationFrame(() => {
          O === "move" ? h(T) : _(T);
        });
      };
      window.addEventListener("mousemove", I), window.addEventListener("touchmove", I), window.addEventListener("mouseup", $), window.addEventListener("touchend", $);
    }, h = (O) => {
      const A = window.event || O, z = A.touches ? A.touches[0] : A;
      if (i.value.type !== "move") return;
      const E = z.clientX - i.value.startX, I = z.clientY - i.value.startY, T = Math.max(
        0,
        Math.min(
          i.value.originalX + E,
          a.value.maxWidth - a.value.width
        )
      ), w = Math.max(
        0,
        Math.min(
          i.value.originalY + I,
          a.value.maxHeight - a.value.height
        )
      );
      Object.assign(a.value, { x: T, y: w });
    }, _ = (O) => {
      const A = window.event || O, z = A.touches ? A.touches[0] : A;
      if (i.value.type !== "resize") return;
      const E = z.clientX - i.value.startX, I = z.clientY - i.value.startY, T = i.value.direction;
      let w = i.value.originalWidth, M = i.value.originalHeight, P = i.value.originalX, b = i.value.originalY;
      switch (T) {
        case "tr":
          w = Math.max(
            100,
            Math.min(
              i.value.originalWidth + E,
              a.value.maxWidth - P
            )
          ), M = Math.max(100, i.value.originalHeight - I), b = Math.max(0, i.value.originalY + I);
          break;
        case "tl":
          w = Math.max(100, i.value.originalWidth - E), M = Math.max(100, i.value.originalHeight - I), P = Math.max(0, i.value.originalX + E), b = Math.max(0, i.value.originalY + I);
          break;
        case "br":
          w = Math.max(100, i.value.originalWidth + E), M = Math.max(100, i.value.originalHeight + I);
          break;
        case "bl":
          w = Math.max(100, i.value.originalWidth - E), M = Math.max(100, i.value.originalHeight + I), P = Math.max(0, i.value.originalX + E);
          break;
      }
      w = Math.min(w, a.value.maxWidth - P), M = Math.min(M, a.value.maxHeight - b), Object.assign(a.value, {
        x: P,
        y: b,
        width: w,
        height: M
      }), console.log("Resized crop params:", a.value);
    }, $ = () => {
      i.value.type = null, window.removeEventListener("mousemove", h), window.removeEventListener("touchmove", h), window.removeEventListener("mousemove", _), window.removeEventListener("touchmove", _), window.removeEventListener("mouseup", $), window.removeEventListener("touchend", $);
    }, y = () => {
      var M, P, b, j;
      const O = s.value, A = O.naturalWidth / O.width, z = O.naturalHeight / O.height, E = Math.min(
        a.value.width * A,
        O.naturalWidth
      ), I = Math.min(
        a.value.height * z,
        O.naturalHeight
      ), T = document.createElement("canvas");
      T.width = E, T.height = I, T.getContext("2d").drawImage(
        O,
        a.value.x * A,
        a.value.y * z,
        E,
        I,
        0,
        0,
        E,
        I
      ), o.value = T.toDataURL("image/png", 0.9), (j = (b = (M = e.params.asaidata) == null ? void 0 : M.rule) == null ? void 0 : b[(P = e.params) == null ? void 0 : P.formkey]) != null && j.data && de(() => {
        let U = e.params.asaidata.rule[e.params.formkey].data, F = {};
        if (U.width < E || U.height < I) {
          U.height / I > U.width / E ? (F.width = U.width, F.height = I * U.width / E) : (F.width = E * U.height / I, F.height = U.height);
          const R = r.value, Y = document.createElement("canvas");
          Y.width = F.width, Y.height = F.height, Y.getContext("2d").drawImage(R, 0, 0, F.width, F.height), o.value = Y.toDataURL("image/png", 0.9);
        }
      });
    }, k = () => {
      const O = document.createElement("a");
      O.download = "cropped-image.png", O.href = o.value, O.click();
    }, C = () => {
      e.params.fn(o.value);
    };
    return (O, A) => (g(), v("div", bl, [
      o.value ? (g(), v("div", $l, [
        p("img", {
          ref_key: "cutImage",
          ref: r,
          src: o.value
        }, null, 8, wl)
      ])) : (g(), v(
        "div",
        {
          key: 1,
          class: "as-img-cut",
          ref_key: "previewContainer",
          ref: l
        },
        [
          p("img", {
            ref_key: "previewImage",
            ref: s,
            src: e.params.base64Data,
            onLoad: c
          }, null, 40, jl),
          J(p(
            "div",
            {
              class: "as-img-crop-box",
              style: K(f.value),
              onMousedown: A[8] || (A[8] = V((z) => m("move"), ["prevent"])),
              onTouchstart: A[9] || (A[9] = V((z) => m("move"), ["prevent"]))
            },
            [
              p(
                "div",
                {
                  class: "as-img-crop-handle top-left",
                  onMousedown: A[0] || (A[0] = V((z) => m("resize", "tl"), ["stop"])),
                  onTouchstart: A[1] || (A[1] = V((z) => m("resize", "tl"), ["stop"]))
                },
                null,
                32
                /* NEED_HYDRATION */
              ),
              p(
                "div",
                {
                  class: "as-img-crop-handle top-right",
                  onMousedown: A[2] || (A[2] = V((z) => m("resize", "tr"), ["stop"])),
                  onTouchstart: A[3] || (A[3] = V((z) => m("resize", "tr"), ["stop"]))
                },
                null,
                32
                /* NEED_HYDRATION */
              ),
              p(
                "div",
                {
                  class: "as-img-crop-handle bottom-left",
                  onMousedown: A[4] || (A[4] = V((z) => m("resize", "bl"), ["stop"])),
                  onTouchstart: A[5] || (A[5] = V((z) => m("resize", "bl"), ["stop"]))
                },
                null,
                32
                /* NEED_HYDRATION */
              ),
              p(
                "div",
                {
                  class: "as-img-crop-handle bottom-right",
                  onMousedown: A[6] || (A[6] = V((z) => m("resize", "br"), ["stop"])),
                  onTouchstart: A[7] || (A[7] = V((z) => m("resize", "br"), ["stop"]))
                },
                null,
                32
                /* NEED_HYDRATION */
              )
            ],
            36
            /* STYLE, NEED_HYDRATION */
          ), [
            [Ce, d.value]
          ])
        ],
        512
        /* NEED_PATCH */
      )),
      p("div", kl, [
        o.value ? (g(), v(
          D,
          { key: 0 },
          [
            p(
              "button",
              { onPointerdown: k },
              "下载图片",
              32
              /* NEED_HYDRATION */
            ),
            p(
              "button",
              { onPointerdown: C },
              "确认上传",
              32
              /* NEED_HYDRATION */
            )
          ],
          64
          /* STABLE_FRAGMENT */
        )) : (g(), v(
          "button",
          {
            key: 1,
            onPointerdown: y
          },
          "确认裁剪",
          32
          /* NEED_HYDRATION */
        ))
      ])
    ]));
  }
}), Pl = /* @__PURE__ */ q(Sl, [["__scopeId", "data-v-de6a6202"]]), He = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Pl
}, Symbol.toStringTag, { value: "Module" })), Al = /* @__PURE__ */ L({
  __name: "AsaiUploadImgCutPop",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    return (o, s) => {
      const r = x("AsaiUploadImgCut"), l = x("PopBox");
      return g(), X(l, {
        ujt: o.ujt,
        id: "popupload",
        full: 1
      }, {
        default: oe(() => [
          u(t).pop.popupload.stat ? (g(), X(r, {
            key: 0,
            ujt: o.ujt,
            params: u(t).pop.popupload.params
          }, null, 8, ["ujt", "params"])) : W("v-if", !0)
        ]),
        _: 1
        /* STABLE */
      }, 8, ["ujt"]);
    };
  }
}), qe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Al
}, Symbol.toStringTag, { value: "Module" })), Ol = { class: "as-form-area" }, Cl = /* @__PURE__ */ L({
  __name: "AsaiForm",
  props: {
    ujt: {},
    asaidata: {}
  },
  setup(n) {
    const e = n;
    let t = {};
    const o = /* @__PURE__ */ Object.assign({
      "./AsaiForm.vue": Me,
      "./AsaiFormLabel.vue": Ue,
      "./AsaiFormLi.vue": Ee,
      "./AsaiFormObject.vue": xe,
      "./AsaiInput.vue": Ie,
      "./AsaiRichEditor.vue": De,
      "./AsaiSelect.vue": Fe,
      "./AsaiUpBinary.vue": Re,
      "./AsaiUpload.vue": We,
      "./AsaiUploadImg.vue": Be,
      "./AsaiUploadImgCut.vue": He,
      "./AsaiUploadImgCutPop.vue": qe
    });
    function s(l) {
      const a = l.match(/([^\\/]+)(?=\.vue$)/);
      return a ? a[1] : null;
    }
    for (let l in o)
      o[s(l) || l] = o[l], delete o[l];
    e.asaidata.comp ? Object.assign(e.asaidata.comp, o) : e.asaidata.comp = { ...o };
    function r(l) {
      return l != null && l.default ? l.default : ve(l);
    }
    return e.asaidata.cmComp = (l) => {
      var a, i, f;
      return t[l] || ((f = (i = (a = e.asaidata) == null ? void 0 : a.rule) == null ? void 0 : i[l]) != null && f.comp && e.asaidata.comp[e.asaidata.rule[l].comp] ? t[l] = r(
        e.asaidata.comp[e.asaidata.rule[l].comp]
      ) : e.asaidata.comp[l] ? t[l] = r(e.asaidata.comp[l]) : l === "object" && e.asaidata.comp && e.asaidata.comp.object && (t[l] = r(e.asaidata.comp.object))), t[l];
    }, re(() => {
      t = null;
    }), (l, a) => {
      const i = x("AsaiFormLi");
      return g(), v("div", Ol, [
        B(i, {
          ujt: l.ujt,
          asaidata: l.asaidata,
          formdata: l.asaidata.data
        }, null, 8, ["ujt", "asaidata", "formdata"])
      ]);
    };
  }
}), Ml = { class: "as-page-area" }, Tl = { class: "as-page-icon" }, Ll = {
  class: "ico",
  style: { "background-color": "var(--cz0)" }
}, zl = {
  class: "tit",
  style: { color: "var(--cz8)" }
}, Ul = /* @__PURE__ */ L({
  __name: "PageErr",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = window;
    return (t, o) => {
      const s = x("AsSvg");
      return g(), v("div", Ml, [
        p("div", null, [
          o[0] || (o[0] = p(
            "div",
            null,
            [
              p("img", {
                src: "./assets/img/logo.png",
                width: "200"
              })
            ],
            -1
            /* CACHED */
          )),
          p("div", Tl, [
            p("div", Ll, [
              B(s, {
                color: "var(--cz8)",
                height: "88px",
                src: "asai/page"
              })
            ]),
            p(
              "div",
              zl,
              S(u(e).$GYS.$webmodel.lang[u(e).$GYS.$webmodel.lang.langty].pageerr),
              1
              /* TEXT */
            )
          ])
        ])
      ]);
    };
  }
}), El = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ul
}, Symbol.toStringTag, { value: "Module" })), xl = { class: "as-page-area" }, Il = { class: "as-page-icon" }, Dl = { class: "ico as-loading" }, Fl = /* @__PURE__ */ L({
  __name: "PageLoadClient",
  props: {
    ujt: {}
  },
  setup(n) {
    return (e, t) => {
      const o = x("AsSvg"), s = x("UserCard");
      return g(), v("div", xl, [
        p("div", null, [
          t[0] || (t[0] = p(
            "div",
            null,
            [
              p("img", {
                src: "./assets/img/logo.png",
                width: "200"
              })
            ],
            -1
            /* CACHED */
          )),
          p("div", Il, [
            p("div", Dl, [
              B(o, {
                color: "var(--ch4)",
                height: "88px",
                src: "asai/loading"
              })
            ])
          ]),
          B(s, { ujt: e.ujt }, null, 8, ["ujt"])
        ])
      ]);
    };
  }
}), Rl = /* @__PURE__ */ q(Fl, [["__scopeId", "data-v-acd96c74"]]), Wl = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Rl
}, Symbol.toStringTag, { value: "Module" })), Bl = { class: "as-page-area" }, Hl = { class: "as-page-icon" }, ql = {
  class: "ico",
  style: { "background-color": "var(--cz0)" }
}, Yl = {
  class: "tit",
  style: { color: "var(--cz8)" }
}, Xl = /* @__PURE__ */ L({
  __name: "PageLoadErr",
  props: {
    ujt: {},
    type: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    return (o, s) => {
      const r = x("AsSvg"), l = x("UserCard");
      return g(), v("div", Bl, [
        p("div", null, [
          s[0] || (s[0] = p(
            "div",
            null,
            [
              p("img", {
                src: "./assets/img/logo.png",
                width: "200"
              })
            ],
            -1
            /* CACHED */
          )),
          p("div", Hl, [
            p("div", ql, [
              B(r, {
                color: "var(--cz8)",
                height: "88px",
                src: "asai/server"
              })
            ]),
            p(
              "div",
              Yl,
              S(u(t).lang.asai.page.loadws),
              1
              /* TEXT */
            )
          ]),
          p(
            "h3",
            null,
            S(e.type),
            1
            /* TEXT */
          ),
          B(l, { ujt: o.ujt }, null, 8, ["ujt"])
        ])
      ]);
    };
  }
}), Vl = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Xl
}, Symbol.toStringTag, { value: "Module" })), Nl = { class: "as-page-area" }, Jl = { class: "as-page-icon" }, Gl = {
  class: "ico",
  style: { "background-color": "var(--cy0)" }
}, Kl = {
  class: "tit",
  style: { color: "var(--cy8)" }
}, Ql = /* @__PURE__ */ L({
  __name: "PageLoadServer",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    return (o, s) => {
      const r = x("AsSvg"), l = x("UserCard");
      return g(), v("div", Nl, [
        p("div", null, [
          s[0] || (s[0] = p(
            "div",
            null,
            [
              p("img", {
                src: "./assets/img/logo.png",
                width: "200"
              })
            ],
            -1
            /* CACHED */
          )),
          p("div", Jl, [
            p("div", Gl, [
              B(r, {
                color: "var(--cy8)",
                height: "88px",
                src: "asai/web"
              })
            ]),
            p(
              "div",
              Kl,
              S(u(t).lang.asai.page.loadserver),
              1
              /* TEXT */
            )
          ]),
          B(l, { ujt: o.ujt }, null, 8, ["ujt"])
        ])
      ]);
    };
  }
}), Zl = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ql
}, Symbol.toStringTag, { value: "Module" })), ei = { class: "as-page-area" }, ti = { class: "as-page-icon" }, oi = {
  class: "ico",
  style: { "background-color": "var(--cz0)" }
}, ni = {
  class: "tit",
  style: { color: "var(--cz8)" }
}, ai = /* @__PURE__ */ L({
  __name: "PageLoadUserToken",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    return (o, s) => {
      const r = x("AsSvg"), l = x("UserCard");
      return g(), v("div", ei, [
        p("div", null, [
          s[0] || (s[0] = p(
            "div",
            null,
            [
              p("img", {
                src: "./assets/img/logo.png",
                width: "200"
              })
            ],
            -1
            /* CACHED */
          )),
          p("div", ti, [
            p("div", oi, [
              B(r, {
                color: "var(--cz8)",
                height: "88px",
                src: "asai/user"
              })
            ]),
            p(
              "div",
              ni,
              S(u(t).lang.asai.page.loadusertoken),
              1
              /* TEXT */
            )
          ]),
          B(l, { ujt: o.ujt }, null, 8, ["ujt"])
        ])
      ]);
    };
  }
}), si = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ai
}, Symbol.toStringTag, { value: "Module" })), li = { class: "as-page-area" }, ii = { class: "as-page-icon" }, ri = {
  class: "ico",
  style: { "background-color": "var(--cy0)" }
}, ui = {
  class: "tit",
  style: { color: "var(--cy8)" }
}, ci = /* @__PURE__ */ L({
  __name: "PageLoadUserTokenOnline",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    return (o, s) => {
      const r = x("AsSvg"), l = x("UserCard");
      return g(), v("div", li, [
        p("div", null, [
          s[0] || (s[0] = p(
            "div",
            null,
            [
              p("img", {
                src: "./assets/img/logo.png",
                width: "200"
              })
            ],
            -1
            /* CACHED */
          )),
          p("div", ii, [
            p("div", ri, [
              B(r, {
                color: "var(--cy8)",
                height: "88px",
                src: "asai/user"
              })
            ]),
            p(
              "div",
              ui,
              S(u(t).lang.asai.page.loaduseronline),
              1
              /* TEXT */
            )
          ]),
          B(l, { ujt: o.ujt }, null, 8, ["ujt"])
        ])
      ]);
    };
  }
}), di = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: ci
}, Symbol.toStringTag, { value: "Module" })), pi = { class: "as-page-area" }, fi = { class: "as-page-icon" }, mi = {
  class: "ico",
  style: { "background-color": "var(--cz0)" }
}, gi = {
  class: "tit",
  style: { color: "var(--cz8)" }
}, hi = /* @__PURE__ */ L({
  __name: "PageLoadWs",
  props: {
    ujt: {},
    type: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    return (o, s) => {
      const r = x("AsSvg"), l = x("UserCard");
      return g(), v("div", pi, [
        p("div", null, [
          s[0] || (s[0] = p(
            "div",
            null,
            [
              p("img", {
                src: "./assets/img/logo.png",
                width: "200"
              })
            ],
            -1
            /* CACHED */
          )),
          p("div", fi, [
            p("div", mi, [
              B(r, {
                color: "var(--cz8)",
                height: "88px",
                src: "asai/server"
              })
            ]),
            p(
              "div",
              gi,
              S(u(t).lang.asai.page.loadws),
              1
              /* TEXT */
            )
          ]),
          p(
            "h3",
            null,
            S(e.type),
            1
            /* TEXT */
          ),
          B(l, { ujt: o.ujt }, null, 8, ["ujt"])
        ])
      ]);
    };
  }
}), vi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: hi
}, Symbol.toStringTag, { value: "Module" })), _i = ["id"], yi = ["id"], bi = ["id"], $i = /* @__PURE__ */ L({
  __name: "PopBoxMask",
  props: {
    ujt: {},
    id: {}
  },
  setup(n) {
    var l;
    fe((a) => ({
      "8ddf247c": u(t).pop[e.id].zindex,
      "8a07427e": s.value,
      "775e89d8": u(t).scale
    }));
    const e = n, { $global: t, $model: o } = e.ujt;
    (l = t.pop[e.id]) != null && l.zindex || (t.pop[e.id].zindex = 101);
    const s = G(() => {
      var a, i;
      return (a = t.pop[e.id]) != null && a.event ? (i = t.pop[e.id]) == null ? void 0 : i.event : "auto";
    });
    t.scale == null && (t.scale = 1);
    const r = G(() => {
      var i, f, d;
      let a = ((i = t.pop[e.id]) == null ? void 0 : i.maskstyle) || {};
      return t.pop[e.id].full == 2 ? a = {
        display: "block",
        ...a
      } : t.pop[e.id].full == 1 ? a = {
        width: ((f = t == null ? void 0 : t.sys) == null ? void 0 : f.zoomwidth) + "px",
        height: ((d = t == null ? void 0 : t.sys) == null ? void 0 : d.zoomheight) + "px",
        ...a
      } : a = {
        display: "block",
        ...a
      }, s.value === "auto" && (a["background-color"] = "rgba(0, 0, 0, 0.3)"), a;
    });
    return (a, i) => u(t).pop[e.id].full == 2 ? (g(), v(
      D,
      { key: 0 },
      [
        u(t).pop[e.id].stat ? (g(), X(be, {
          key: 0,
          to: "#popteleport"
        }, [
          p("div", {
            class: "as-pop-box-mask-2",
            style: K(r.value),
            id: "popmask" + a.id
          }, [
            H(a.$slots, "default", {}, void 0, !0)
          ], 12, _i)
        ])) : W("v-if", !0)
      ],
      64
      /* STABLE_FRAGMENT */
    )) : u(t).pop[e.id].full == 1 ? (g(), v(
      D,
      { key: 1 },
      [
        u(t).pop[e.id].stat ? (g(), X(be, {
          key: 0,
          to: "#popteleport"
        }, [
          p("div", {
            class: "as-pop-box-mask-1",
            id: "popmask" + a.id
          }, [
            p(
              "div",
              {
                class: "as-pop-box-mask-zoom",
                style: K(r.value)
              },
              [
                H(a.$slots, "default", {}, void 0, !0)
              ],
              4
              /* STYLE */
            )
          ], 8, yi)
        ])) : W("v-if", !0)
      ],
      64
      /* STABLE_FRAGMENT */
    )) : (g(), v(
      D,
      { key: 2 },
      [
        u(t).pop[e.id].stat ? (g(), v("div", {
          key: 0,
          class: "as-pop-box-mask-0",
          style: K(r.value),
          id: "popmask" + a.id
        }, [
          H(a.$slots, "default", {}, void 0, !0)
        ], 12, bi)) : W("v-if", !0)
      ],
      64
      /* STABLE_FRAGMENT */
    ));
  }
}), wi = /* @__PURE__ */ q($i, [["__scopeId", "data-v-59dcc4af"]]), ji = { class: "as-pop-content-txt" }, ki = {
  key: 0,
  class: "as-pop-content-btns"
}, Si = ["onPointerup"], Pi = /* @__PURE__ */ L({
  __name: "PopBoxContent",
  props: {
    ujt: {},
    id: {}
  },
  setup(n) {
    const e = n, { $global: t, $fn: o } = e.ujt, s = G(() => {
      var l, a;
      const r = {};
      return (l = t.pop[e.id]) != null && l.nooverflow || (r.overflow = ((a = t.pop[e.id]) == null ? void 0 : a.conoverflow) || "auto"), r;
    });
    return (r, l) => {
      var a, i;
      return g(), v(
        D,
        null,
        [
          p(
            "div",
            {
              class: "as-pop-content",
              style: K(s.value)
            },
            [
              H(r.$slots, "default", {}, () => {
                var f;
                return [
                  p(
                    "div",
                    ji,
                    S(((f = u(t).pop[e.id]) == null ? void 0 : f.con) || ""),
                    1
                    /* TEXT */
                  )
                ];
              }, !0)
            ],
            4
            /* STYLE */
          ),
          (i = (a = u(t).pop[e.id]) == null ? void 0 : a.btns) != null && i.length ? (g(), v("div", ki, [
            (g(!0), v(
              D,
              null,
              Q(u(t).pop[e.id].btns, (f, d) => (g(), v(
                D,
                null,
                [
                  f.fn ? (g(), v("div", {
                    key: 0,
                    onTouchstart: l[0] || (l[0] = V(
                      //@ts-ignore
                      (...c) => u(o).As.eStop && u(o).As.eStop(...c),
                      ["stop"]
                    )),
                    onPointerdown: l[1] || (l[1] = V(
                      //@ts-ignore
                      (...c) => u(o).As.eStop && u(o).As.eStop(...c),
                      ["stop"]
                    )),
                    onPointerup: V((c) => f.fn(), ["stop"]),
                    class: Z(d ? "" : "cur")
                  }, S(f.nm), 43, Si)) : (g(), v(
                    "div",
                    {
                      key: 1,
                      class: Z(d ? "nofn" : "cur nofn")
                    },
                    S(f.nm),
                    3
                    /* TEXT, CLASS */
                  ))
                ],
                64
                /* STABLE_FRAGMENT */
              ))),
              256
              /* UNKEYED_FRAGMENT */
            ))
          ])) : W("v-if", !0)
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), Ai = /* @__PURE__ */ q(Pi, [["__scopeId", "data-v-6024274d"]]), Oi = { class: "as-pop-bar" }, Ci = {
  key: 0,
  class: "as-pop-opts"
}, Mi = /* @__PURE__ */ L({
  __name: "PopBoxBar",
  props: {
    ujt: {},
    id: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    function o() {
      var s;
      (s = t.pop[e.id]) != null && s.closepop && typeof t.pop[e.id].closepop == "function" ? t.pop[e.id].closepop() : t.pop[e.id].stat = 0;
    }
    return (s, r) => {
      var a;
      const l = x("AsSvg");
      return g(), v(
        D,
        null,
        [
          p("div", Oi, [
            u(t).pop[e.id].ico ? (g(), X(l, {
              key: 0,
              color: "var(--ch8)",
              height: "var(--fs4)",
              src: u(t).pop[e.id].ico
            }, null, 8, ["src"])) : W("v-if", !0),
            te(
              " " + S(u(t).pop[e.id].tit || ""),
              1
              /* TEXT */
            )
          ]),
          (a = u(t).pop[e.id]) != null && a.noclose ? W("v-if", !0) : (g(), v("div", Ci, [
            p(
              "div",
              {
                onPointerdown: r[0] || (r[0] = V((i) => o(), ["stop", "prevent"]))
              },
              "×",
              32
              /* NEED_HYDRATION */
            )
          ]))
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), Ti = /* @__PURE__ */ q(Mi, [["__scopeId", "data-v-5d818b03"]]), Li = ["id"], zi = ["id"], Ui = ["id"], Ei = /* @__PURE__ */ L({
  __name: "PopBoxMain",
  props: {
    ujt: {},
    id: {}
  },
  setup(n) {
    var l;
    const e = n, { $global: t, $model: o } = e.ujt;
    ((l = t.pop[e.id]) == null ? void 0 : l.noresize) == null && (t.pop[e.id].noresize = 1);
    const s = ie({ w: 0, h: 0 });
    ce(() => {
      if (!t.pop[e.id].full) {
        const a = document.getElementById("poparea" + e.id) || document.getElementById("popmask" + e.id) || document.getElementById(t.sys.zoomid) || document.getElementById("asaizoomarea");
        a && (s.w = a == null ? void 0 : a.offsetWidth, s.h = a == null ? void 0 : a.offsetHeight);
      }
    });
    const r = G(() => {
      var i, f, d, c, m, h, _;
      let a = ((i = t.pop[e.id]) == null ? void 0 : i.popstyle) || {};
      return a = {
        width: ((f = t.pop[e.id]) == null ? void 0 : f.width) || "380px",
        height: ((d = t.pop[e.id]) == null ? void 0 : d.height) || "auto",
        zIndex: t.pop[e.id].zindex + 1,
        ...a
      }, (c = t.pop[e.id]) != null && c.nooverflow || (a.overflow = ((m = t.pop[e.id]) == null ? void 0 : m.boxoverflow) || "hidden"), t.pop[e.id].full == 2 ? a = {
        transform: `translate(calc(-50% + ${window.innerWidth / 2}px),calc(-50% + ${window.innerHeight / 2}px))`,
        ...a
      } : t.pop[e.id].full == 1 ? a = {
        transform: `translate(calc(-50% + ${((h = t == null ? void 0 : t.sys) == null ? void 0 : h.zoomwidth) / 2}px),calc(-50% + ${((_ = t == null ? void 0 : t.sys) == null ? void 0 : _.zoomheight) / 2}px))`,
        ...a
      } : s.w && s.h ? a = {
        transform: `translate(calc(-50% + ${s.w / 2}px),calc(-50% + ${s.h / 2}px))`,
        ...a
      } : a = {
        transform: `translate(calc(-50% + ${window.innerWidth / 2}px),calc(-50% + ${window.innerHeight / 2}px))`,
        ...a
      }, a;
    });
    return (a, i) => {
      const f = pe("popresizezoom");
      return u(t).pop[e.id].noresize ? (g(), v("div", {
        key: 0,
        class: "as-pop-area",
        style: K(r.value),
        id: "pop" + a.id
      }, [
        H(a.$slots, "default", {}, void 0, !0)
      ], 12, Li)) : u(t).pop[e.id].full == 2 ? J((g(), v("div", {
        key: 1,
        class: "as-pop-area",
        style: K(r.value),
        id: "pop" + a.id
      }, [
        H(a.$slots, "default", {}, void 0, !0)
      ], 12, zi)), [
        [f, { ujt: a.ujt, scale: 1 }]
      ]) : J((g(), v("div", {
        key: 2,
        class: "as-pop-area",
        style: K(r.value),
        id: "pop" + a.id
      }, [
        H(a.$slots, "default", {}, void 0, !0)
      ], 12, Ui)), [
        [f, { ujt: a.ujt }]
      ]);
    };
  }
}), xi = /* @__PURE__ */ q(Ei, [["__scopeId", "data-v-0cf489f2"]]), Ii = ["id"], Di = ["id"], Fi = ["id"], Ri = ["id"], Wi = /* @__PURE__ */ L({
  __name: "PopBoxDragBar",
  props: {
    ujt: {},
    id: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    return (o, s) => {
      const r = pe("drag"), l = pe("dragzoom");
      return u(t).pop[e.id].notit ? (g(), v(
        D,
        { key: 0 },
        [],
        64
        /* STABLE_FRAGMENT */
      )) : u(t).pop[e.id].nodrag ? (g(), v("div", {
        key: 1,
        class: "as-pop-drag-bar",
        id: "popbar" + o.id
      }, [
        H(o.$slots, "default", {}, void 0, !0)
      ], 8, Ii)) : u(t).pop[e.id].full == 2 ? J((g(), v("div", {
        key: 2,
        class: "as-pop-drag-bar",
        id: "popbar" + o.id
      }, [
        H(o.$slots, "default", {}, void 0, !0)
      ], 8, Di)), [
        [r, {
          domarea: "pop" + o.id,
          dommask: "popmask" + o.id
        }]
      ]) : u(t).pop[e.id].full == 1 ? J((g(), v("div", {
        key: 3,
        class: "as-pop-drag-bar",
        id: "popbar" + o.id
      }, [
        H(o.$slots, "default", {}, void 0, !0)
      ], 8, Fi)), [
        [l, {
          ujt: o.ujt,
          dom: "popbar" + o.id,
          domarea: "pop" + o.id
          // dom: {
          //     drag: 'popbar' + id,
          //     dragarea: 'pop' + id,
          // },
        }]
      ]) : J((g(), v("div", {
        key: 4,
        class: "as-pop-drag-bar",
        id: "popbar" + o.id
      }, [
        H(o.$slots, "default", {}, void 0, !0)
      ], 8, Ri)), [
        [l, {
          ujt: o.ujt,
          dom: "popbar" + o.id,
          domarea: "pop" + o.id
          // dom: {
          //     drag: 'popbar' + id,
          //     dragarea: 'pop' + id,
          // },
        }]
      ]);
    };
  }
}), Bi = /* @__PURE__ */ q(Wi, [["__scopeId", "data-v-492c5cd4"]]), Hi = /* @__PURE__ */ L({
  __name: "PopBox",
  props: {
    ujt: {},
    id: {},
    full: {},
    maskstyle: {},
    popstyle: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    return e.id || (e.id = "popdefault"), t.pop[e.id] || (t.pop[e.id] = {}), e.full && !t.pop[e.id].full && (t.pop[e.id].full = e.full), e.maskstyle && !t.pop[e.id].maskstyle && (t.pop[e.id].maskstyle = e.maskstyle), e.popstyle && !t.pop[e.id].popstyle && (t.pop[e.id].popstyle = e.popstyle), re(() => {
      t.pop[e.id] = {};
    }), (o, s) => u(t).pop[e.id].stat ? (g(), X(wi, {
      key: 0,
      ujt: o.ujt,
      id: o.id
    }, {
      default: oe(() => [
        (g(), X(
          Je,
          null,
          [
            B(xi, {
              ujt: o.ujt,
              id: o.id
            }, {
              default: oe(() => [
                B(Bi, {
                  ujt: o.ujt,
                  id: o.id
                }, {
                  default: oe(() => [
                    B(Ti, {
                      ujt: o.ujt,
                      id: o.id
                    }, null, 8, ["ujt", "id"])
                  ]),
                  _: 1
                  /* STABLE */
                }, 8, ["ujt", "id"]),
                B(Ai, {
                  ujt: o.ujt,
                  id: o.id
                }, {
                  default: oe(() => [
                    H(o.$slots, "default")
                  ]),
                  _: 3
                  /* FORWARDED */
                }, 8, ["ujt", "id"])
              ]),
              _: 3
              /* FORWARDED */
            }, 8, ["ujt", "id"])
          ],
          1024
          /* DYNAMIC_SLOTS */
        ))
      ]),
      _: 3
      /* FORWARDED */
    }, 8, ["ujt", "id"])) : W("v-if", !0);
  }
}), qi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Hi
}, Symbol.toStringTag, { value: "Module" })), Yi = /* @__PURE__ */ L({
  __name: "PopBoxConfirm",
  props: {
    ujt: {},
    id: {},
    full: {},
    popstyle: {},
    maskstyle: {}
  },
  setup(n) {
    var o, s;
    const e = n, { $global: t } = e.ujt;
    return e.id || (e.id = "popdefaultboxconfirm"), t.pop[e.id] || (t.pop[e.id] = {}), (o = t.pop[e.id]) != null && o.btns || (t.pop[e.id].btns = G(() => {
      var r, l, a, i;
      return [
        {
          nm: ((l = (r = t.lang) == null ? void 0 : r.asai) == null ? void 0 : l.confirm) || "Confirm",
          fn: () => {
            t.pop[e.id].fn && t.pop[e.id].fn(), t.pop[e.id].stat = 0;
          }
        },
        {
          nm: ((i = (a = t.lang) == null ? void 0 : a.asai) == null ? void 0 : i.cancel) || "Cancel",
          fn: () => {
            t.pop[e.id].stat = 0;
          }
        }
      ];
    })), ((s = t.pop[e.id]) == null ? void 0 : s.notit) == null && (t.pop[e.id].notit = 1), (r, l) => {
      const a = x("PopBox");
      return g(), X(a, {
        ujt: r.ujt,
        id: r.id,
        full: r.full,
        popstyle: r.popstyle,
        maskstyle: r.maskstyle
      }, null, 8, ["ujt", "id", "full", "popstyle", "maskstyle"]);
    };
  }
}), Xi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Yi
}, Symbol.toStringTag, { value: "Module" })), Vi = { class: "as-pop-pass" }, Ni = /* @__PURE__ */ L({
  __name: "PopBoxConfirmPass",
  props: {
    ujt: {},
    id: {},
    full: {},
    popstyle: {},
    maskstyle: {},
    pass: {}
  },
  setup(n) {
    var s, r, l;
    const e = n, { $global: t, $fn: o } = e.ujt;
    return e.id || (e.id = "popdefaultboxconfirmpass"), t.pop[e.id] || (t.pop[e.id] = {}), (s = t.pop[e.id]) != null && s.tit || (t.pop[e.id].tit = o.lg("asai.confirmpass")), (r = t.pop[e.id]) != null && r.pass || (t.pop[e.id].pass = ""), (l = t.pop[e.id]) != null && l.btns || (t.pop[e.id].btns = [
      {
        nm: t.lang.asai.confirm,
        fn: () => {
          e.pass && t.pop[e.id].pass == e.pass ? (t.pop[e.id].fn && t.pop[e.id].fn(), t.pop[e.id].stat = 0) : t.msg.fn({
            type: "err",
            con: o.lg("asai.confirmpasserr")
          });
        }
      },
      {
        nm: t.lang.asai.cancel,
        fn: () => {
          t.pop[e.id].stat = 0;
        }
      }
    ]), (a, i) => {
      const f = x("PopBox");
      return g(), X(f, {
        ujt: a.ujt,
        id: a.id,
        full: a.full,
        popstyle: a.popstyle,
        maskstyle: a.maskstyle
      }, {
        default: oe(() => [
          H(a.$slots, "default", {}, () => [
            p("div", Vi, [
              p(
                "p",
                null,
                S(u(o).lg("asai.confirmpassword")),
                1
                /* TEXT */
              ),
              p("p", null, [
                J(p(
                  "input",
                  {
                    type: "password",
                    "show-password": "",
                    "onUpdate:modelValue": i[0] || (i[0] = (d) => u(t).pop[e.id].pass = d)
                  },
                  null,
                  512
                  /* NEED_PATCH */
                ), [
                  [ne, u(t).pop[e.id].pass]
                ])
              ])
            ])
          ], !0)
        ]),
        _: 3
        /* FORWARDED */
      }, 8, ["ujt", "id", "full", "popstyle", "maskstyle"]);
    };
  }
}), Ji = /* @__PURE__ */ q(Ni, [["__scopeId", "data-v-36c9215d"]]), Gi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ji
}, Symbol.toStringTag, { value: "Module" })), Ki = {
  key: 0,
  class: "as-pop-drop-area"
}, Qi = ["id"], Zi = /* @__PURE__ */ L({
  __name: "PopDrop",
  props: {
    ujt: {},
    id: {},
    popstyle: {},
    maskstyle: {}
  },
  setup(n) {
    var o, s, r;
    fe((l) => ({
      "7bd2f396": u(t).pop[e.id].zindex - 1,
      "307dd6b8": u(t).pop[e.id].zindex
    }));
    const e = n, { $global: t } = e.ujt;
    return e.id || (e.id = "popdefaulttip"), t.pop[e.id] || (t.pop[e.id] = {}), (o = t.pop[e.id]) != null && o.zindex || (t.pop[e.id].zindex = 101), (s = t.pop[e.id]) != null && s.popstyle || (e != null && e.popstyle ? t.pop[e.id].popstyle = e.popstyle : t.pop[e.id].popstyle = {
      width: "auto",
      height: "auto",
      top: 0,
      right: 0
    }), (r = t.pop[e.id]) != null && r.maskstyle || (e != null && e.maskstyle ? t.pop[e.id].maskstyle = e.maskstyle : t.pop[e.id].maskstyle = {}), re(() => {
      t.pop[e.id] = {};
    }), (l, a) => {
      var i, f, d;
      return g(), v(
        "div",
        {
          class: Z(((i = u(t).pop[e.id]) == null ? void 0 : i.css) + " as-pop-drop")
        },
        [
          u(t).pop[e.id].stat && ((f = u(t).pop[e.id].popstyle) == null ? void 0 : f.top) != 0 ? (g(), v("div", Ki, [
            p(
              "div",
              {
                class: "as-pop-drop-pop",
                style: K(u(t).pop[e.id].popstyle)
              },
              [
                H(l.$slots, "pop", {}, () => [
                  te(
                    S(u(t).pop[e.id].con || ""),
                    1
                    /* TEXT */
                  )
                ], !0)
              ],
              4
              /* STYLE */
            )
          ])) : W("v-if", !0),
          p(
            "div",
            {
              class: "as-pop-drop-des",
              onPointerdown: a[0] || (a[0] = V((c) => u(t).pop[e.id].stat = u(t).pop[e.id].stat ? 0 : 1, ["stop"]))
            },
            [
              H(l.$slots, "des", {}, () => [
                te(
                  S(u(t).pop[e.id].des || ""),
                  1
                  /* TEXT */
                )
              ], !0)
            ],
            32
            /* NEED_HYDRATION */
          ),
          u(t).pop[e.id].stat && ((d = u(t).pop[e.id].popstyle) == null ? void 0 : d.top) == 0 ? (g(), v("div", {
            key: 1,
            class: "as-pop-drop-area",
            id: "pop" + l.id
          }, [
            p(
              "div",
              {
                class: "as-pop-drop-pop",
                style: K(u(t).pop[e.id].popstyle)
              },
              [
                H(l.$slots, "pop", {}, () => [
                  te(
                    S(u(t).pop[e.id].con || ""),
                    1
                    /* TEXT */
                  )
                ], !0)
              ],
              4
              /* STYLE */
            )
          ], 8, Qi)) : W("v-if", !0),
          u(t).pop[e.id].stat ? (g(), v(
            "div",
            {
              key: 2,
              class: "as-pop-drop-mask",
              style: K(u(t).pop[e.id].maskstyle),
              onPointerdown: a[1] || (a[1] = V((c) => u(t).pop[e.id].stat = 0, ["stop"]))
            },
            null,
            36
            /* STYLE, NEED_HYDRATION */
          )) : W("v-if", !0)
        ],
        2
        /* CLASS */
      );
    };
  }
}), er = /* @__PURE__ */ q(Zi, [["__scopeId", "data-v-28eefe9c"]]), tr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: er
}, Symbol.toStringTag, { value: "Module" })), or = /* @__PURE__ */ L({
  __name: "PopMod",
  props: {
    ujt: {},
    id: {},
    popstyle: {},
    maskstyle: {}
  },
  setup(n) {
    var o, s, r;
    fe((l) => ({
      d560ff20: u(t).pop[e.id].zindex - 1,
      "7ba6e092": u(t).pop[e.id].zindex
    }));
    const e = n, { $global: t } = e.ujt;
    return e.id || (e.id = "popdefaultmod"), t.pop[e.id] || (t.pop[e.id] = {}), (o = t.pop[e.id]) != null && o.zindex || (t.pop[e.id].zindex = 101), (s = t.pop[e.id]) != null && s.popstyle || (e != null && e.popstyle ? t.pop[e.id].popstyle = e.popstyle : t.pop[e.id].popstyle = {
      top: 0,
      right: 0,
      width: "180px",
      height: "100vh",
      "background-color": "#ffffff88"
    }), (r = t.pop[e.id]) != null && r.maskstyle || (e != null && e.maskstyle ? t.pop[e.id].maskstyle = e.maskstyle : t.pop[e.id].maskstyle = {
      "background-color": "rgba(0, 0, 0, 0.02)"
    }), re(() => {
      t.pop[e.id] = {};
    }), (l, a) => u(t).pop[e.id].stat ? (g(), v(
      D,
      { key: 0 },
      [
        p(
          "div",
          {
            class: "as-pop-mod-mask",
            style: K(u(t).pop[e.id].maskstyle),
            onPointerdown: a[0] || (a[0] = (i) => u(t).pop[e.id].stat = 0)
          },
          null,
          36
          /* STYLE, NEED_HYDRATION */
        ),
        p(
          "div",
          {
            class: "as-pop-mod-pop",
            style: K(u(t).pop[e.id].popstyle)
          },
          [
            H(l.$slots, "default", {}, void 0, !0)
          ],
          4
          /* STYLE */
        )
      ],
      64
      /* STABLE_FRAGMENT */
    )) : W("v-if", !0);
  }
}), nr = /* @__PURE__ */ q(or, [["__scopeId", "data-v-b6a03a80"]]), ar = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: nr
}, Symbol.toStringTag, { value: "Module" })), sr = { class: "as-pop-msg-list" }, lr = { class: "as-pop-msg-li" }, ir = {
  key: 0,
  class: "as-pop-msg-tit"
}, rr = {
  key: 1,
  class: "as-pop-msg-con"
}, ur = {
  key: 2,
  class: "as-pop-msg-tm"
}, cr = ["title"], dr = /* @__PURE__ */ L({
  __name: "PopMsg",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $global: t, $fn: o } = e.ujt;
    t.msg || (t.msg = {
      tm: null,
      data: [],
      bak: [],
      fn: s
    });
    function s(l) {
      var i, f, d, c, m, h;
      let a = null;
      if (l === 1 ? (f = (i = t == null ? void 0 : t.msg) == null ? void 0 : i.data) != null && f.length && (a = t.msg.data.shift(), a != null && a.tmout && (clearTimeout(a.tmout), delete a.tmout), t.msg.bak.push(a), t.msg.bak.length > 100 && t.msg.bak.splice(80)) : (!((c = (d = t == null ? void 0 : t.msg) == null ? void 0 : d.data) != null && c.length) || !((h = (m = t == null ? void 0 : t.msg) == null ? void 0 : m.data) != null && h.find(
        (_) => _.con === l.con && _.tit === l.tit
      ))) && (l.tm = o.As.getTime(), t.msg.data.push(l), l.tmout = setTimeout(() => {
        t.msg.fn(1);
      }, (l == null ? void 0 : l.time) || 3e3)), a)
        return a;
    }
    function r() {
      let l = t.msg.data.length;
      for (; l--; )
        s(1);
    }
    return $e(() => {
      r();
    }), (l, a) => {
      var i, f, d, c, m;
      return (i = u(t).msg.data) != null && i.length ? (g(), v(
        "div",
        {
          key: 0,
          class: "as-pop-msg-area",
          style: K(((f = u(t).msg.data) == null ? void 0 : f.maskstyle) || {}),
          onPointerdown: a[0] || (a[0] = (h) => r()),
          onTouchstart: a[1] || (a[1] = //@ts-ignore
          (...h) => u(o).As.eStop && u(o).As.eStop(...h))
        },
        [
          p("div", sr, [
            (g(!0), v(
              D,
              null,
              Q(u(t).msg.data, (h) => (g(), v("div", lr, [
                p(
                  "div",
                  {
                    class: Z("as-pop-msg" + ((h == null ? void 0 : h.type) || ""))
                  },
                  [
                    h != null && h.tit ? (g(), v(
                      "div",
                      ir,
                      S(h.tit),
                      1
                      /* TEXT */
                    )) : W("v-if", !0),
                    h != null && h.con ? (g(), v(
                      "div",
                      rr,
                      S(h.con),
                      1
                      /* TEXT */
                    )) : W("v-if", !0),
                    h != null && h.tm ? (g(), v(
                      "div",
                      ur,
                      " [" + S(h.tm) + "] ",
                      1
                      /* TEXT */
                    )) : W("v-if", !0)
                  ],
                  2
                  /* CLASS */
                )
              ]))),
              256
              /* UNKEYED_FRAGMENT */
            ))
          ]),
          p("div", {
            class: "as-pop-msg-btn",
            title: (m = (c = (d = u(t)) == null ? void 0 : d.lang) == null ? void 0 : c.asai) == null ? void 0 : m.clear
          }, "×", 8, cr)
        ],
        36
        /* STYLE, NEED_HYDRATION */
      )) : W("v-if", !0);
    };
  }
}), pr = /* @__PURE__ */ q(dr, [["__scopeId", "data-v-f98b746d"]]), fr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: pr
}, Symbol.toStringTag, { value: "Module" })), mr = {
  key: 0,
  class: "as-pop-msg-tit"
}, gr = {
  key: 1,
  class: "as-pop-msg-con"
}, hr = {
  key: 2,
  class: "as-pop-msg-tm"
}, vr = /* @__PURE__ */ L({
  __name: "PopMsgOneByOne",
  props: {
    ujt: {}
  },
  setup(n) {
    var l, a;
    const e = n, { $global: t, $fn: o } = e.ujt;
    if (!t.msg) {
      let i = function(f) {
        var c, m, h, _, $, y;
        let d = null;
        if (f === 1 ? (m = (c = t == null ? void 0 : t.msg) == null ? void 0 : c.data) != null && m.length && (d = t.msg.data.shift()) : (!((_ = (h = t == null ? void 0 : t.msg) == null ? void 0 : h.data) != null && _.length) || !((y = ($ = t == null ? void 0 : t.msg) == null ? void 0 : $.data) != null && y.find(
          (k) => k.con === f.con && k.tit === f.tit
        ))) && (f.tm = o.As.getTime(), t.msg.data.push(f)), o.As.localSet(t.msg.key, t.msg.data), d)
          return d;
      };
      t.msg = {
        key: "as-pop-msg",
        tm: null,
        stat: 0,
        data: [],
        bak: [],
        cur: {},
        fn: i
      };
    }
    function s() {
      var i;
      (i = t.msg.cur) != null && i.noclose || (t.msg.stat = 0, t.msg.bak.push(t.msg.fn(1)), t.msg.bak.length > 100 && t.msg.bak.splice(80), clearTimeout(t.msg.tm));
    }
    const r = G(() => {
      var i;
      return t.msg.data.length ? (t.msg.cur = t.msg.data[0], t.msg.stat || (t.msg.stat = 1, clearTimeout(t.msg.tm), t.msg.tm = setTimeout(() => {
        s();
      }, ((i = t.msg.cur) == null ? void 0 : i.time) || 3e3)), t.msg.cur) : null;
    });
    if (!((a = (l = t.msg) == null ? void 0 : l.data) != null && a.length)) {
      const i = o.As.toObj(o.As.localGet(t.msg.key));
      i && (t.msg.data = i);
    }
    return (i, f) => {
      var d, c, m, h, _;
      return r.value ? (g(), v(
        "div",
        {
          key: 0,
          class: "as-pop-msg-area",
          onPointerdown: f[0] || (f[0] = ($) => s()),
          onTouchstart: f[1] || (f[1] = //@ts-ignore
          (...$) => u(o).As.eStop && u(o).As.eStop(...$)),
          style: K(((d = r.value) == null ? void 0 : d.maskstyle) || {})
        },
        [
          p(
            "div",
            {
              class: Z("as-pop-msg" + (((c = r.value) == null ? void 0 : c.type) || ""))
            },
            [
              (m = r.value) != null && m.tit ? (g(), v(
                "div",
                mr,
                S(r.value.tit),
                1
                /* TEXT */
              )) : W("v-if", !0),
              (h = r.value) != null && h.con ? (g(), v(
                "div",
                gr,
                S(r.value.con),
                1
                /* TEXT */
              )) : W("v-if", !0),
              (_ = r.value) != null && _.tm ? (g(), v(
                "div",
                hr,
                " [" + S(r.value.tm) + "] ",
                1
                /* TEXT */
              )) : W("v-if", !0)
            ],
            2
            /* CLASS */
          )
        ],
        36
        /* STYLE, NEED_HYDRATION */
      )) : W("v-if", !0);
    };
  }
}), _r = /* @__PURE__ */ q(vr, [["__scopeId", "data-v-e5ebd45c"]]), yr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: _r
}, Symbol.toStringTag, { value: "Module" })), br = ["id"], $r = /* @__PURE__ */ L({
  __name: "PopTip",
  props: {
    ujt: {},
    id: {},
    popstyle: {},
    maskstyle: {}
  },
  setup(n) {
    var l, a, i;
    fe((f) => ({
      a3732182: u(t).pop[e.id].zindex,
      "3afdf09d": u(t).pop[e.id].zindex - 1
    }));
    const e = n, { $global: t, $fn: o } = e.ujt;
    e.id || (e.id = "popdefaulttip"), t.pop[e.id] || (t.pop[e.id] = {}), (l = t.pop[e.id]) != null && l.zindex || (t.pop[e.id].zindex = 101), (a = t.pop[e.id]) != null && a.popstyle || (e != null && e.popstyle ? t.pop[e.id].popstyle = e.popstyle : t.pop[e.id].popstyle = {
      width: "auto",
      height: "auto"
    }), (i = t.pop[e.id]) != null && i.maskstyle || (e != null && e.maskstyle ? t.pop[e.id].maskstyle = e.maskstyle : t.pop[e.id].maskstyle = {});
    function s(f) {
      t.pop[e.id].popstyle.top = f.clientY + "px", t.pop[e.id].popstyle.left = f.clientX + "px", t.pop[e.id].popstyle.transform = `scale(${t.scale})`, t.pop[e.id].stat = t.pop[e.id].stat ? 0 : 1;
    }
    function r() {
      t.pop[e.id].stat = 0;
    }
    return re(() => {
      t.pop[e.id] = {};
    }), (f, d) => {
      var c;
      return g(), v(
        "div",
        {
          class: Z(((c = u(t).pop[e.id]) == null ? void 0 : c.css) + " as-pop-tip")
        },
        [
          p(
            "div",
            {
              class: "as-pop-tip-des",
              onPointerdown: V(s, ["stop"])
            },
            [
              H(f.$slots, "des", {}, () => [
                te(
                  S(u(t).pop[e.id].des || ""),
                  1
                  /* TEXT */
                )
              ], !0)
            ],
            32
            /* NEED_HYDRATION */
          ),
          u(t).pop[e.id].stat ? (g(), X(be, {
            key: 0,
            to: "#popteleport"
          }, [
            p(
              "div",
              {
                class: "as-pop-tip-mask",
                style: K(u(t).pop[e.id].maskstyle),
                onPointerdown: d[1] || (d[1] = V((m) => r(), ["stop"])),
                onTouchstart: d[2] || (d[2] = //@ts-ignore
                (...m) => u(o).As.eStop && u(o).As.eStop(...m))
              },
              [
                p("div", {
                  class: "as-pop-tip-pop",
                  id: "pop" + f.id,
                  style: K(u(t).pop[e.id].popstyle),
                  onPointerdown: d[0] || (d[0] = V(() => {
                  }, ["stop"]))
                }, [
                  H(f.$slots, "pop", {}, () => [
                    te(
                      S(u(t).pop[e.id].con || ""),
                      1
                      /* TEXT */
                    )
                  ], !0)
                ], 44, br)
              ],
              36
              /* STYLE, NEED_HYDRATION */
            )
          ])) : W("v-if", !0)
        ],
        2
        /* CLASS */
      );
    };
  }
}), wr = /* @__PURE__ */ q($r, [["__scopeId", "data-v-c9ab0153"]]), jr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: wr
}, Symbol.toStringTag, { value: "Module" })), kr = {
  key: 0,
  class: "as-pop-tipconfirm-pop"
}, Sr = { class: "as-pop-tipconfirm-content" }, Pr = { class: "as-pop-tipconfirm-btns" }, Ar = /* @__PURE__ */ L({
  __name: "PopTipConfirm",
  props: {
    ujt: {},
    id: {},
    popstyle: {},
    maskstyle: {},
    fn: {}
  },
  setup(n) {
    const e = n, { $global: t } = e.ujt;
    return e.id || (e.id = "popdefaulttipconfirm"), (o, s) => {
      const r = x("PopTip");
      return g(), X(r, {
        ujt: o.ujt,
        id: o.id
      }, {
        des: oe(() => [
          H(o.$slots, "des", {}, void 0, !0)
        ]),
        pop: oe(() => {
          var l, a, i, f, d, c;
          return [
            u(t).pop[o.id].stat ? (g(), v("div", kr, [
              p("div", Sr, [
                H(o.$slots, "pop", {}, void 0, !0)
              ]),
              p("div", Pr, [
                e.fn ? (g(), v(
                  "div",
                  {
                    key: 0,
                    onPointerdown: s[0] || (s[0] = (m) => e.fn())
                  },
                  S((i = (a = (l = u(t)) == null ? void 0 : l.lang) == null ? void 0 : a.asai) == null ? void 0 : i.confirm),
                  33
                  /* TEXT, NEED_HYDRATION */
                )) : W("v-if", !0),
                p(
                  "div",
                  {
                    onPointerdown: s[1] || (s[1] = (m) => u(t).pop[o.id].stat = 0),
                    class: "cur"
                  },
                  S((c = (d = (f = u(t)) == null ? void 0 : f.lang) == null ? void 0 : d.asai) == null ? void 0 : c.cancel),
                  33
                  /* TEXT, NEED_HYDRATION */
                )
              ])
            ])) : W("v-if", !0)
          ];
        }),
        _: 3
        /* FORWARDED */
      }, 8, ["ujt", "id"]);
    };
  }
}), Or = /* @__PURE__ */ q(Ar, [["__scopeId", "data-v-c903aacd"]]), Cr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Or
}, Symbol.toStringTag, { value: "Module" })), Mr = {
  key: 0,
  class: "as-usercard"
}, Tr = /* @__PURE__ */ L({
  __name: "UserCard",
  props: {
    ujt: {},
    type: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o } = e.ujt, { initUserToken: s } = t.useInitUser(e.ujt, "webserver");
    return s(), (r, l) => {
      var i, f, d, c;
      const a = x("AsSvg");
      return (f = (i = u(o).lang) == null ? void 0 : i.asai) != null && f.usercard ? (g(), v("div", Mr, [
        p(
          "div",
          {
            onPointerdown: l[0] || (l[0] = (m) => {
              var h, _, $;
              return u(t).sethash((($ = (_ = (h = u(o).sys) == null ? void 0 : h.router) == null ? void 0 : _.config) == null ? void 0 : $.login) || "user/login");
            })
          },
          [
            B(a, {
              color: "var(--cm8)",
              height: "26px",
              src: "asai/login"
            }),
            te(
              " " + S((d = u(o).lang.asai.usercard) == null ? void 0 : d.login),
              1
              /* TEXT */
            )
          ],
          32
          /* NEED_HYDRATION */
        ),
        p(
          "div",
          {
            class: "cur",
            onPointerdown: l[1] || (l[1] = (m) => u(t).As.localInit()),
            title: "ctrl+shift+r"
          },
          [
            B(a, {
              color: "var(--cm0)",
              height: "26px",
              src: "asai/reset"
            }),
            te(
              " " + S((c = u(o).lang.asai.usercard) == null ? void 0 : c.reset),
              1
              /* TEXT */
            )
          ],
          32
          /* NEED_HYDRATION */
        )
      ])) : W("v-if", !0);
    };
  }
}), Lr = /* @__PURE__ */ q(Tr, [["__scopeId", "data-v-aa51e791"]]), zr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Lr
}, Symbol.toStringTag, { value: "Module" })), Ur = { class: "as-user-area-manage" }, Er = { class: "as-user" }, xr = { key: 0 }, Ir = { key: 1 }, Dr = { class: "as-user-btns" }, Fr = /* @__PURE__ */ L({
  __name: "UserDelManage",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $db: t, $fn: o } = e.ujt, { delUser: s } = o.useUser(e);
    return s(), (r, l) => (g(), v("div", Ur, [
      p("div", Er, [
        u(t).channeluser.cur.msg ? (g(), v(
          "h1",
          xr,
          S(u(t).channeluser.cur.msg),
          1
          /* TEXT */
        )) : (g(), v(
          "h1",
          Ir,
          S(u(o).lg("channeluser.ui.delok")),
          1
          /* TEXT */
        )),
        p("div", Dr, [
          p(
            "div",
            {
              class: "cur",
              onPointerdown: l[0] || (l[0] = (a) => u(o).sethash("user/manage/list/"))
            },
            S(u(o).lg("channeluser.ui.list")),
            33
            /* TEXT, NEED_HYDRATION */
          )
        ])
      ])
    ]));
  }
}), Rr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Fr
}, Symbol.toStringTag, { value: "Module" })), Wr = { class: "as-user-area" }, Br = { class: "as-user" }, Hr = { class: "as-user-btns" }, qr = /* @__PURE__ */ L({
  __name: "UserEdit",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $db: t, $fn: o } = e.ujt, { userEdit: s } = o.useUser(e);
    return (r, l) => (g(), v("div", Wr, [
      p("div", Br, [
        H(r.$slots, "tit"),
        p("label", null, [
          p(
            "div",
            null,
            S(u(o).lg("channeluser.ui.pw")) + "：",
            1
            /* TEXT */
          ),
          J(p(
            "input",
            {
              type: "password",
              "onUpdate:modelValue": l[0] || (l[0] = (a) => u(t).channeluser.cur.pw = a)
            },
            null,
            512
            /* NEED_PATCH */
          ), [
            [ne, u(t).channeluser.cur.pw]
          ])
        ]),
        p("label", null, [
          p(
            "div",
            null,
            S(u(o).lg("channeluser.ui.pwn")) + "：",
            1
            /* TEXT */
          ),
          J(p(
            "input",
            {
              type: "password",
              "onUpdate:modelValue": l[1] || (l[1] = (a) => u(t).channeluser.cur.pwn = a)
            },
            null,
            512
            /* NEED_PATCH */
          ), [
            [ne, u(t).channeluser.cur.pwn]
          ])
        ]),
        p("label", null, [
          p(
            "div",
            null,
            S(u(o).lg("channeluser.ui.pwnn")) + "：",
            1
            /* TEXT */
          ),
          J(p(
            "input",
            {
              type: "password",
              "onUpdate:modelValue": l[2] || (l[2] = (a) => u(t).channeluser.cur.pwnn = a)
            },
            null,
            512
            /* NEED_PATCH */
          ), [
            [ne, u(t).channeluser.cur.pwnn]
          ])
        ]),
        p("div", Hr, [
          p(
            "div",
            {
              class: "cur",
              onPointerdown: l[3] || (l[3] = (a) => u(s)())
            },
            S(u(o).lg("channeluser.ui.edit")),
            33
            /* TEXT, NEED_HYDRATION */
          ),
          H(r.$slots, "btn")
        ])
      ])
    ]));
  }
}), Yr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: qr
}, Symbol.toStringTag, { value: "Module" })), Xr = { class: "as-user-area-manage" }, Vr = { class: "as-user" }, Nr = { key: 0 }, Jr = ["value"], Gr = { class: "as-user-btns" }, Kr = { class: "as-user-dec" }, Qr = { class: "as-user-btns" }, Zr = /* @__PURE__ */ L({
  __name: "UserEditManage",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $db: t, $global: o, $fn: s } = e.ujt, { editUser: r, initUser: l, cmLvList: a } = s.useUser(e);
    return l(), (i, f) => {
      var d, c, m, h, _, $;
      return g(), v("div", Xr, [
        p("div", Vr, [
          H(i.$slots, "tit"),
          p("label", null, [
            p(
              "div",
              null,
              S(u(s).lg("channeluser.data.us")) + "：",
              1
              /* TEXT */
            ),
            te(
              " " + S(u(t).channeluser.cur.us),
              1
              /* TEXT */
            )
          ]),
          u(t).channeluser.cur.lv < ((c = (d = u(o).user) == null ? void 0 : d.info) == null ? void 0 : c.lv) || u(t).channeluser.cur.us === ((h = (m = u(o).user) == null ? void 0 : m.info) == null ? void 0 : h.us) ? (g(), v(
            D,
            { key: 0 },
            [
              p("label", null, [
                p(
                  "div",
                  null,
                  S(u(s).lg("channeluser.data.pw")) + "：",
                  1
                  /* TEXT */
                ),
                J(p(
                  "input",
                  {
                    type: "password",
                    "onUpdate:modelValue": f[0] || (f[0] = (y) => u(t).channeluser.cur.pw = y)
                  },
                  null,
                  512
                  /* NEED_PATCH */
                ), [
                  [ne, u(t).channeluser.cur.pw]
                ])
              ]),
              u(t).channeluser.cur.us !== (($ = (_ = u(o).user) == null ? void 0 : _.info) == null ? void 0 : $.us) ? (g(), v("label", Nr, [
                p(
                  "div",
                  null,
                  S(u(s).lg("channeluser.data.lv")) + "：",
                  1
                  /* TEXT */
                ),
                J(p(
                  "select",
                  {
                    "onUpdate:modelValue": f[1] || (f[1] = (y) => u(t).channeluser.cur.lv = y)
                  },
                  [
                    (g(!0), v(
                      D,
                      null,
                      Q(u(a), (y) => (g(), v("option", {
                        key: "lv" + y[0],
                        value: +y[0]
                      }, S(y[1]), 9, Jr))),
                      128
                      /* KEYED_FRAGMENT */
                    ))
                  ],
                  512
                  /* NEED_PATCH */
                ), [
                  [ue, u(t).channeluser.cur.lv]
                ])
              ])) : W("v-if", !0),
              p("div", Gr, [
                p(
                  "div",
                  {
                    class: "cur",
                    onPointerdown: f[2] || (f[2] = (y) => u(r)())
                  },
                  S(u(s).lg("channeluser.ui.edit")),
                  33
                  /* TEXT, NEED_HYDRATION */
                ),
                H(i.$slots, "btn")
              ])
            ],
            64
            /* STABLE_FRAGMENT */
          )) : (g(), v(
            D,
            { key: 1 },
            [
              p(
                "div",
                Kr,
                S(u(s).lg("channeluser.ui.nopower")),
                1
                /* TEXT */
              ),
              p("div", Qr, [
                H(i.$slots, "btn")
              ])
            ],
            64
            /* STABLE_FRAGMENT */
          ))
        ])
      ]);
    };
  }
}), eu = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Zr
}, Symbol.toStringTag, { value: "Module" })), tu = { class: "as-user-area" }, ou = { class: "as-user" }, nu = { class: "as-user-btns" }, au = /* @__PURE__ */ L({
  __name: "UserExit",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $fn: t, $global: o } = e.ujt, { userExit: s } = t.useUser(e);
    return s(), (r, l) => (g(), v("div", tu, [
      p("div", ou, [
        H(r.$slots, "tit"),
        p("div", nu, [
          p(
            "div",
            {
              class: "cur",
              onPointerdown: l[0] || (l[0] = (a) => {
                var i, f, d;
                return u(t).sethash(
                  ((d = (f = (i = u(o).sys) == null ? void 0 : i.router) == null ? void 0 : f.config) == null ? void 0 : d.login) || "user/login"
                );
              })
            },
            S(u(t).lg("channeluser.ui.login")),
            33
            /* TEXT, NEED_HYDRATION */
          ),
          H(r.$slots, "btn")
        ])
      ])
    ]));
  }
}), su = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: au
}, Symbol.toStringTag, { value: "Module" })), lu = { class: "as-user-area-manage" }, iu = { class: "as-user" }, ru = { class: "as-user-list as-list-nth" }, uu = { class: "tit" }, cu = { class: "li" }, du = { class: "lis" }, pu = { class: "btns" }, fu = { class: "li" }, mu = { class: "lis" }, gu = {
  key: 0,
  class: "btns"
}, hu = ["onPointerdown"], vu = ["onPointerdown"], _u = {
  key: 1,
  class: "btns"
}, yu = {
  key: 1,
  class: "as-channel-page"
}, bu = /* @__PURE__ */ L({
  __name: "UserListManage",
  props: {
    ujt: {},
    showtype: {}
  },
  setup(n) {
    const e = n, { $fn: t, $db: o, $global: s } = e.ujt, { fetchContent: r, setPage: l, delUser: a } = t.useUser(e);
    o.channeluser.fetch = r, o.channeluser.setpage = l, ce(() => {
      r(0);
    }), o.channeluser.cmPageSize = G(() => {
      var c;
      return Number(s.location.query.ps || ((c = o.channeluser.config) == null ? void 0 : c.ps)) || 5;
    });
    function i(c) {
      o.channeluser.cur.us = "", o.channeluser.cur.pw = "", o.channeluser.cur.lv = 0, s.pop.popdefaultconfirm.stat = 1, s.pop.popdefaultconfirm.full = 1, s.pop.popdefaultconfirm.con = s.lang.channeluser.ui.del + " " + c.us, s.pop.popdefaultconfirm.fn = () => a(c.us);
    }
    function f(c) {
      t.setquery({ us: c.us }, 1), o.channeluser.cur.us = c.us, o.channeluser.cur.pw = c.pw, o.channeluser.cur.lv = c.lv, s.pop.popedituser.stat = 1, s.pop.popedituser.tit = s.lang.channeluser.ui.edit + " " + c.us;
    }
    const d = G(() => {
      var c;
      return (((c = o == null ? void 0 : o.channeluser) == null ? void 0 : c.list) || []).filter((m) => {
        var h, _;
        return +(m == null ? void 0 : m.lv) <= +((_ = (h = s.user) == null ? void 0 : h.info) == null ? void 0 : _.lv);
      });
    });
    return (c, m) => {
      var k, C;
      const h = x("UserEditManage"), _ = x("PopBox"), $ = x("ChannelListSearch"), y = x("ChannelListPage");
      return g(), v(
        D,
        null,
        [
          B(_, {
            ujt: c.ujt,
            id: "popedituser",
            full: 1
          }, {
            default: oe(() => [
              u(s).pop.popedituser.stat ? (g(), X(h, {
                key: 0,
                ujt: c.ujt
              }, {
                btn: oe(() => [
                  p(
                    "div",
                    {
                      onPointerdown: m[0] || (m[0] = (O) => u(s).pop.popedituser.stat = 0)
                    },
                    S(u(t).lg("asai.close")),
                    33
                    /* TEXT, NEED_HYDRATION */
                  )
                ]),
                _: 1
                /* STABLE */
              }, 8, ["ujt"])) : W("v-if", !0)
            ]),
            _: 1
            /* STABLE */
          }, 8, ["ujt"]),
          p("div", lu, [
            p("div", iu, [
              H(c.$slots, "tit"),
              H(c.$slots, "btn"),
              c.showtype ? W("v-if", !0) : (g(), X($, {
                key: 0,
                ujt: c.ujt,
                opt: { channel: "channeluser", model: "asai", ty: 1 }
              }, null, 8, ["ujt"])),
              p("div", ru, [
                p("div", uu, [
                  p(
                    "div",
                    cu,
                    S(u(s).lang.channeluser.data.us),
                    1
                    /* TEXT */
                  ),
                  p(
                    "div",
                    du,
                    S(u(s).lang.channeluser.data.lv),
                    1
                    /* TEXT */
                  ),
                  p(
                    "div",
                    pu,
                    S(u(s).lang.asai.opt),
                    1
                    /* TEXT */
                  )
                ]),
                (g(!0), v(
                  D,
                  null,
                  Q(d.value, (O) => {
                    var A, z;
                    return g(), v("div", null, [
                      p(
                        "div",
                        fu,
                        S(O.us),
                        1
                        /* TEXT */
                      ),
                      p(
                        "div",
                        mu,
                        S(u(s).lang.channeluser.lv[O.lv]),
                        1
                        /* TEXT */
                      ),
                      +O.lv < ((z = (A = u(s).user) == null ? void 0 : A.info) == null ? void 0 : z.lv) ? (g(), v("div", gu, [
                        p("div", {
                          onPointerdown: (E) => f(O)
                        }, S(u(t).lg("channeluser.ui.edit")), 41, hu),
                        p("div", {
                          onPointerdown: (E) => i(O)
                        }, S(u(t).lg("channeluser.ui.del")), 41, vu)
                      ])) : (g(), v("div", _u, "-"))
                    ]);
                  }),
                  256
                  /* UNKEYED_FRAGMENT */
                ))
              ]),
              ((C = (k = u(o).channeluser) == null ? void 0 : k.pagelist) == null ? void 0 : C.length) > 1 ? (g(), v("div", yu, [
                B(y, {
                  ujt: c.ujt,
                  opt: { channel: "channeluser", model: "asai", ty: 1 }
                }, null, 8, ["ujt"])
              ])) : W("v-if", !0)
            ])
          ])
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), $u = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: bu
}, Symbol.toStringTag, { value: "Module" })), wu = { class: "as-user-area" }, ju = { class: "as-user" }, ku = { class: "as-user-btns" }, Su = /* @__PURE__ */ L({
  __name: "UserLogin",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $db: t, $fn: o, $global: s } = e.ujt, { userLogin: r } = o.useUser(e);
    return (l, a) => (g(), v("div", wu, [
      p("div", ju, [
        H(l.$slots, "tit"),
        H(l.$slots, "form", {
          opt: { userLogin: u(r) }
        }, () => [
          p("label", null, [
            p(
              "div",
              null,
              S(u(s).lang.channeluser.data.us) + "：",
              1
              /* TEXT */
            ),
            J(p(
              "input",
              {
                "onUpdate:modelValue": a[0] || (a[0] = (i) => u(t).channeluser.cur.us = i)
              },
              null,
              512
              /* NEED_PATCH */
            ), [
              [ne, u(t).channeluser.cur.us]
            ])
          ]),
          p("label", null, [
            p(
              "div",
              null,
              S(u(s).lang.channeluser.data.pw) + "：",
              1
              /* TEXT */
            ),
            J(p(
              "input",
              {
                type: "password",
                "onUpdate:modelValue": a[1] || (a[1] = (i) => u(t).channeluser.cur.pw = i)
              },
              null,
              512
              /* NEED_PATCH */
            ), [
              [ne, u(t).channeluser.cur.pw]
            ])
          ]),
          p("div", ku, [
            p(
              "div",
              {
                class: "cur",
                onPointerdown: a[2] || (a[2] = (i) => u(r)())
              },
              S(u(s).lang.channeluser.ui.login),
              33
              /* TEXT, NEED_HYDRATION */
            ),
            H(l.$slots, "btn")
          ])
        ])
      ])
    ]));
  }
}), Pu = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Su
}, Symbol.toStringTag, { value: "Module" })), Au = { class: "as-user-btns" }, Ou = /* @__PURE__ */ L({
  __name: "UserManage",
  props: {
    ujt: {},
    showtype: {}
  },
  setup(n) {
    const e = n, { $fn: t, $db: o, $global: s } = e.ujt, { initUserChannel: r } = t.useUser(e);
    r();
    function l() {
      o.channeluser.cur.us = "", o.channeluser.cur.pw = "", o.channeluser.cur.lv = 0, s.pop.popadduser.stat = 1, s.pop.popadduser.tit = s.lang.channeluser.ui.add;
    }
    return (a, i) => {
      var m;
      const f = x("UserRegManage"), d = x("PopBox"), c = x("UserListManage");
      return g(), v(
        D,
        null,
        [
          B(d, {
            ujt: a.ujt,
            id: "popadduser",
            full: 1
          }, {
            default: oe(() => {
              var h;
              return [
                (h = u(s).pop.popadduser) != null && h.stat ? (g(), X(f, {
                  key: 0,
                  ujt: a.ujt
                }, {
                  btn: oe(() => [
                    p(
                      "div",
                      {
                        onPointerdown: i[0] || (i[0] = (_) => u(s).pop.popadduser.stat = 0)
                      },
                      S(u(t).lg("asai.close")),
                      33
                      /* TEXT, NEED_HYDRATION */
                    )
                  ]),
                  _: 1
                  /* STABLE */
                }, 8, ["ujt"])) : W("v-if", !0)
              ];
            }),
            _: 1
            /* STABLE */
          }, 8, ["ujt"]),
          (m = u(o).channeluser) != null && m.stat ? (g(), X(c, {
            key: 0,
            ujt: a.ujt,
            showtype: a.showtype
          }, Ge({
            btn: oe(() => [
              p("div", Au, [
                p(
                  "div",
                  {
                    class: "cur",
                    onPointerdown: i[1] || (i[1] = (h) => l())
                  },
                  S(u(t).lg("channeluser.ui.add")),
                  33
                  /* TEXT, NEED_HYDRATION */
                ),
                a.showtype ? W("v-if", !0) : (g(), v(
                  "div",
                  {
                    key: 0,
                    onPointerdown: i[2] || (i[2] = (h) => u(t).sethash(""))
                  },
                  S(u(t).lg("asai.index")),
                  33
                  /* TEXT, NEED_HYDRATION */
                )),
                a.showtype ? W("v-if", !0) : (g(), v(
                  "div",
                  {
                    key: 1,
                    onPointerdown: i[3] || (i[3] = (h) => u(t).sethash("user/exit/"))
                  },
                  S(u(t).lg("channeluser.ui.exit")),
                  33
                  /* TEXT, NEED_HYDRATION */
                ))
              ])
            ]),
            _: 2
            /* DYNAMIC */
          }, [
            a.showtype ? void 0 : {
              name: "tit",
              fn: oe(() => [
                p(
                  "h1",
                  null,
                  S(u(t).lg("channeluser.ui.list")),
                  1
                  /* TEXT */
                )
              ]),
              key: "0"
            }
          ]), 1032, ["ujt", "showtype"])) : W("v-if", !0)
        ],
        64
        /* STABLE_FRAGMENT */
      );
    };
  }
}), Cu = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Ou
}, Symbol.toStringTag, { value: "Module" })), Mu = { class: "as-user-area" }, Tu = { class: "as-user" }, Lu = { class: "as-user-btns" }, zu = /* @__PURE__ */ L({
  __name: "UserReg",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $db: t, $fn: o } = e.ujt, { userReg: s } = o.useUser(e);
    return (r, l) => (g(), v("div", Mu, [
      p("div", Tu, [
        H(r.$slots, "tit"),
        p("label", null, [
          p(
            "div",
            null,
            S(u(o).lg("channeluser.data.us")) + "：",
            1
            /* TEXT */
          ),
          J(p(
            "input",
            {
              "onUpdate:modelValue": l[0] || (l[0] = (a) => u(t).channeluser.cur.us = a)
            },
            null,
            512
            /* NEED_PATCH */
          ), [
            [ne, u(t).channeluser.cur.us]
          ])
        ]),
        p("label", null, [
          p(
            "div",
            null,
            S(u(o).lg("channeluser.data.pw")) + "：",
            1
            /* TEXT */
          ),
          J(p(
            "input",
            {
              type: "password",
              "onUpdate:modelValue": l[1] || (l[1] = (a) => u(t).channeluser.cur.pw = a)
            },
            null,
            512
            /* NEED_PATCH */
          ), [
            [ne, u(t).channeluser.cur.pw]
          ])
        ]),
        p("div", Lu, [
          p(
            "div",
            {
              class: "cur",
              onPointerdown: l[2] || (l[2] = (a) => u(s)())
            },
            S(u(o).lg("channeluser.ui.reg")),
            33
            /* TEXT, NEED_HYDRATION */
          ),
          H(r.$slots, "btn")
        ])
      ])
    ]));
  }
}), Uu = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: zu
}, Symbol.toStringTag, { value: "Module" })), Eu = { class: "as-user-area-manage" }, xu = { class: "as-user" }, Iu = ["value"], Du = { class: "as-user-btns" }, Fu = /* @__PURE__ */ L({
  __name: "UserRegManage",
  props: {
    ujt: {}
  },
  setup(n) {
    const e = n, { $db: t, $fn: o } = e.ujt, { addUser: s, cmLvList: r } = o.useUser(e);
    return (l, a) => (g(), v("div", Eu, [
      p("div", xu, [
        H(l.$slots, "tit"),
        p("label", null, [
          p(
            "div",
            null,
            S(u(o).lg("channeluser.data.us")) + "：",
            1
            /* TEXT */
          ),
          J(p(
            "input",
            {
              "onUpdate:modelValue": a[0] || (a[0] = (i) => u(t).channeluser.cur.us = i)
            },
            null,
            512
            /* NEED_PATCH */
          ), [
            [ne, u(t).channeluser.cur.us]
          ])
        ]),
        p("label", null, [
          p(
            "div",
            null,
            S(u(o).lg("channeluser.data.pw")) + "：",
            1
            /* TEXT */
          ),
          J(p(
            "input",
            {
              type: "password",
              "onUpdate:modelValue": a[1] || (a[1] = (i) => u(t).channeluser.cur.pw = i)
            },
            null,
            512
            /* NEED_PATCH */
          ), [
            [ne, u(t).channeluser.cur.pw]
          ])
        ]),
        p("label", null, [
          p(
            "div",
            null,
            S(u(o).lg("channeluser.data.lv")) + "：",
            1
            /* TEXT */
          ),
          J(p(
            "select",
            {
              "onUpdate:modelValue": a[2] || (a[2] = (i) => u(t).channeluser.cur.lv = i)
            },
            [
              (g(!0), v(
                D,
                null,
                Q(u(r), (i) => (g(), v("option", {
                  key: "lv" + i[0],
                  value: +i[0]
                }, S(i[1]), 9, Iu))),
                128
                /* KEYED_FRAGMENT */
              ))
            ],
            512
            /* NEED_PATCH */
          ), [
            [ue, u(t).channeluser.cur.lv]
          ])
        ]),
        p("div", Du, [
          p(
            "div",
            {
              class: "cur",
              onPointerdown: a[3] || (a[3] = (i) => u(s)())
            },
            S(u(o).lg("channeluser.ui.add")),
            33
            /* TEXT, NEED_HYDRATION */
          ),
          H(l.$slots, "btn")
        ])
      ])
    ]));
  }
}), Ru = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Fu
}, Symbol.toStringTag, { value: "Module" })), Wu = /* @__PURE__ */ L({
  __name: "PageTest",
  props: {
    ujt: {}
  },
  setup(n) {
    return (e, t) => (g(), v("h1", null, "test"));
  }
}), Bu = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
  __proto__: null,
  default: Wu
}, Symbol.toStringTag, { value: "Module" })), qu = {
  install(n, e) {
    e.loadv({
      app: n,
      eager: !0,
      files: /* @__PURE__ */ Object.assign({
        "../asai/asdirectives/v-dbpointerdown/index.ts": Qe,
        "../asai/asdirectives/v-drag/index.ts": et,
        "../asai/asdirectives/v-dragzoom/index.ts": ot,
        "../asai/asdirectives/v-fullscreen/index.ts": st,
        "../asai/asdirectives/v-keyboard/index.ts": it,
        "../asai/asdirectives/v-levelread/index.ts": ut,
        "../asai/asdirectives/v-longpress/index.ts": dt,
        "../asai/asdirectives/v-popresizezoom/index.ts": ft,
        "../asai/asdirectives/v-resizeflexwidthzoom/index.ts": gt,
        "../asai/asdirectives/v-scrollbottom/index.ts": vt,
        "../asai/asdirectives/v-userlevel/index.ts": yt,
        "./asdirectives/v-test/index.ts": $t
      })
    }), e.loadts({
      app: n,
      key: "$engineasai",
      eager: !0,
      files: /* @__PURE__ */ Object.assign({
        "../asai/asengine/api/useApi.ts": jt,
        "../asai/asengine/common/As.ts": St,
        "../asai/asengine/common/AsAES.ts": At,
        "../asai/asengine/common/AsCode.ts": Ct,
        "../asai/asengine/common/AsFull.ts": Tt,
        "../asai/asengine/common/AsRouter.ts": zt,
        "../asai/asengine/common/useChannel.ts": Et,
        "../asai/asengine/common/usePage.ts": It,
        "../asai/asengine/common/useUser.ts": Ft,
        "../asai/asengine/init/useInitApp.ts": Wt,
        "../asai/asengine/init/useInitUser.ts": Ht,
        "../asai/asengine/provide/useProvide.ts": Jt,
        "../asai/asengine/ws/useBeat.ts": Kt,
        "../asai/asengine/ws/useWs.ts": Zt,
        "./asengine/test/useTest.ts": to
      })
    }), e.loadvue({
      loadfn: e.loadfn,
      app: n,
      eager: !0,
      files: /* @__PURE__ */ Object.assign({
        "../asai/asui/app/AsaiComponent.vue": no,
        "../asai/asui/app/AsaiInitPage.vue": po,
        "../asai/asui/app/AsaiWeb.vue": so,
        "../asai/asui/app/AsaiWebModule.vue": mo,
        "../asai/asui/app/AsaiWebModuleDefault.vue": wo,
        "../asai/asui/app/AsaiWebModuleIndex.vue": ko,
        "../asai/asui/app/AsaiWebServer.vue": io,
        "../asai/asui/app/AsaiWebServerUser.vue": uo,
        "../asai/asui/app/AsaiWebServerUserOnline.vue": Ao,
        "../asai/asui/channel/ChannelAdd.vue": To,
        "../asai/asui/channel/ChannelClass.vue": Uo,
        "../asai/asui/channel/ChannelEdit.vue": Do,
        "../asai/asui/channel/ChannelIndex.vue": No,
        "../asai/asui/channel/ChannelIndexOne.vue": nn,
        "../asai/asui/channel/ChannelList.vue": cn,
        "../asai/asui/channel/ChannelListPage.vue": mn,
        "../asai/asui/channel/ChannelListSearch.vue": kn,
        "../asai/asui/channel/ChannelPos.vue": On,
        "../asai/asui/channel/ChannelShow.vue": Tn,
        "../asai/asui/chat/ChatRoom.vue": Hn,
        "../asai/asui/common/AsKeyBoard.vue": Gn,
        "../asai/asui/common/AsKeyBoardAuto.vue": Qn,
        "../asai/asui/common/AsKeyBoardBottom.vue": ta,
        "../asai/asui/common/AsLink.vue": fa,
        "../asai/asui/common/AsPageBusy.vue": _a,
        "../asai/asui/common/AsSvg.vue": ka,
        "../asai/asui/common/AsUploadFile.vue": Oa,
        "../asai/asui/common/AsUploadTxt.vue": La,
        "../asai/asui/common/ChangeLang.vue": Ea,
        "../asai/asui/common/ChangeTheme.vue": Da,
        "../asai/asui/common/ImgUploadCut.vue": Va,
        "../asai/asui/common/JsonEditor.vue": ts,
        "../asai/asui/common/JsonTree.vue": cs,
        "../asai/asui/common/MenuShowFix.vue": vs,
        "../asai/asui/common/RouterMap.vue": $s,
        "../asai/asui/common/RouterView.vue": js,
        "../asai/asui/common/VirtualList.vue": Ps,
        "../asai/asui/common/ZoomContainer.vue": Cs,
        "../asai/asui/form/AsaiForm.vue": Me,
        "../asai/asui/form/AsaiFormLabel.vue": Ue,
        "../asai/asui/form/AsaiFormLi.vue": Ee,
        "../asai/asui/form/AsaiFormObject.vue": xe,
        "../asai/asui/form/AsaiInput.vue": Ie,
        "../asai/asui/form/AsaiRichEditor.vue": De,
        "../asai/asui/form/AsaiSelect.vue": Fe,
        "../asai/asui/form/AsaiUpBinary.vue": Re,
        "../asai/asui/form/AsaiUpload.vue": We,
        "../asai/asui/form/AsaiUploadImg.vue": Be,
        "../asai/asui/form/AsaiUploadImgCut.vue": He,
        "../asai/asui/form/AsaiUploadImgCutPop.vue": qe,
        "../asai/asui/page/PageErr.vue": El,
        "../asai/asui/page/PageLoadClient.vue": Wl,
        "../asai/asui/page/PageLoadErr.vue": Vl,
        "../asai/asui/page/PageLoadServer.vue": Zl,
        "../asai/asui/page/PageLoadUserToken.vue": si,
        "../asai/asui/page/PageLoadUserTokenOnline.vue": di,
        "../asai/asui/page/PageLoadWs.vue": vi,
        "../asai/asui/pop/PopBox.vue": qi,
        "../asai/asui/pop/PopBoxConfirm.vue": Xi,
        "../asai/asui/pop/PopBoxConfirmPass.vue": Gi,
        "../asai/asui/pop/PopDrop.vue": tr,
        "../asai/asui/pop/PopMod.vue": ar,
        "../asai/asui/pop/PopMsg.vue": fr,
        "../asai/asui/pop/PopMsgOneByOne.vue": yr,
        "../asai/asui/pop/PopTip.vue": jr,
        "../asai/asui/pop/PopTipConfirm.vue": Cr,
        "../asai/asui/user/UserCard.vue": zr,
        "../asai/asui/user/UserDelManage.vue": Rr,
        "../asai/asui/user/UserEdit.vue": Yr,
        "../asai/asui/user/UserEditManage.vue": eu,
        "../asai/asui/user/UserExit.vue": su,
        "../asai/asui/user/UserListManage.vue": $u,
        "../asai/asui/user/UserLogin.vue": Pu,
        "../asai/asui/user/UserManage.vue": Cu,
        "../asai/asui/user/UserReg.vue": Uu,
        "../asai/asui/user/UserRegManage.vue": Ru,
        "./asui/test/PageTest.vue": Bu
      })
    });
  }
};
export {
  q as _,
  qu as a
};
